Einzelnen Beitrag anzeigen

diavy

Registriert seit: 11. Apr 2012
54 Beiträge
 
#11

AW: "Verwertung" eines Satzes

  Alt 16. Sep 2012, 20:20
€: Hier ist nun mein Code:

Delphi-Quellcode:

implementation

{$R *.dfm}
procedure TForm1.edt_phraseKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
i,k,max:integer; words:array of string; longest:string; summ:real;
begin
if (Key=VK_Return) then
        begin
        k:=0;
        for i:=1 to Length(edt_phrase.Text) do
                if ord(edt_phrase.text[i])=32 then inc(k);
        SetLength(words,k+1);
        {-----------------------------------------------}
        k:=0;
        for i:=1 to Length(edt_phrase.Text) do
                if ord(edt_phrase.text[i])=32 then inc(k)
                else words[k]:=words[k]+edt_phrase.text[i];
        edt_wordscounter.Text:=IntToStr(k+1)+' words';
        {-----------------------------------------------}
        max:=Length(words[0]);
        longest:=words[0];
        for i:=1 to k do
                if Length(words[i]) > max then
                        begin
                        max:=Length(words[i]);
                        longest:=words[i];
                        end;
        edt_longestword.Text:=longest + '(' + IntToStr(max) + ' letters)';
        {-----------------------------------------------}
        summ:=0;
        for i:=0 to k do
                summ:=summ+Length(words[i]);
        summ:=summ/(k+1);
        edt_averagelength.Text:=FloatToStr(summ);
        end;
end;

procedure TForm1.edt_letterChange(Sender: TObject);
var summ,i:integer;
begin
if edt_letter.Text <> 'then
        begin
        summ:=0;
        for i:=1 to Length(edt_phrase.Text) do
                if edt_phrase.Text[i]=edt_letter.text[1] then inc(summ);
        lbl_frequence.Caption:='The letter ' + edt_letter.text[1] + ' got used ' + IntToStr(summ) + ' times.';
        end;
end;

end.
Wie krieg ich es nun hin, dass ich zB einen Button hinzufügen könnte, und bei dessen OnClick-Event die hier gepostete Key-Up-Prozedur gestartet wird?
Sprich dass man mit "Enter"-Drücken und einem Button das ganze starten kann.

Geändert von diavy (16. Sep 2012 um 20:51 Uhr)
  Mit Zitat antworten Zitat