unit frmDisplaySentence_u;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls;
type
TfrmDispOneChar = class(TForm)
edtCode: TEdit;
btnDisplay: TButton;
lblMsg: TLabel;
memOutput: TMemo;
procedure btnDisplayClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmDispOneChar: TfrmDispOneChar;
implementation
{$R *.dfm}
procedure TfrmDispOneChar.btnDisplayClick(Sender: TObject);
var
K, iLength : integer;
cOne : char;
sCode : string;
begin
sCode := edtCode.Text;
iLength := Length(sCode);
for K := 1 to iLength do
cOne := sCode[K];
memOutput.Lines.Add(cOne);
end;
This is my code to split a word into it's individual letters in an memo, each in separate lines.
My code only returns the last letter of the word. I feel this is very close but I do not know how to proceed further. Any help would be appreciated.
Delphi is not like ie Python where whitespace is significant and defines block. In Delphi you have to use begin and end to mark the block, in this case your for loop:
procedure TfrmDispOneChar.btnDisplayClick(Sender: TObject);
var
K, iLength : integer;
cOne : char;
sCode : string;
begin
sCode := edtCode.Text;
iLength := Length(sCode);
for K := 1 to iLength do begin
cOne := sCode[K];
memOutput.Lines.Add(cOne);
end;
end;
来源:https://stackoverflow.com/questions/36822669/cannot-split-word-into-individual-letters-in-a-memo