Cannot split word into individual letters in a memo

偶尔善良 提交于 2019-12-02 22:52:26

问题


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.


回答1:


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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!