2016-04-24 147 views
-1
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; 

拆分成詞個別字母這是我的代碼爲它在一個備忘錄單個字母,每個單獨的線來分割的話。不能在備忘錄

我的代碼只返回單詞的最後一個字母。我覺得這非常接近,但我不知道如何繼續下去。任何幫助,將不勝感激。

+3

使用調試器可以幫助你找出這樣的下一次問題你自己。 –

回答

3

德爾福是不是像Python那裏的空白是重要的,並定義塊。在Delphi中你必須使用beginend標記塊,在這種情況下,您的for循環:

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; 
+0

不能相信這是容易的* facepalm *謝謝 –