Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#23

AW: String Zeichen einzeln ausgeben

  Alt 15. Mär 2013, 11:24
Ungetestet:
Delphi-Quellcode:
procedure TForm2.DoOnEditChange(Sender: TObject);
begin
  if Sender is TEdit then
    if TEdit(Sender).Text = 'Athen
      ShowMessage('Aha');
end;

procedure TForm2.NewEdit(Index: integer; const DisplayText: string);
begin
  Assert((Index >= Low(EditArray)) and (Index <= High(EditArray), 'Ungültiger Index');
  EditArray[Index] := TEdit.Create(Self);
  EditArray[Index].Parent := Self;
  EditArray[Index].Left := 16 + (EditArray[Index].Left + 32) * i;
  EditArray[Index].Top := 380;
  EditArray[Index].Width := 30;
  EditArray[Index].Font.Name := 'Comic Sans MS';
  EditArray[Index].Font.Size := 14;
  EditArray[Index].MaxLength := 1;
  EditArray[Index].Alignment := taCenter;
  EditArray[Index].OnChange := DoOnEditChange;
  EditArray[Index].Text := DisplayText;
end;

procedure TForm2.RecreateEdits(const TextToDisplay: string);
var
  i: integer;
begin
  for i := Low(EditArray) to High(EditArray) do
    EditArray[i].Free;
  SetLength(EditArray, Length(TextToDisplay));
  for i := Low(EditArray) to High(EditArray) do
    NewEdit(i, TextToDisplay[i + 1]);
end;

procedure TForm2.BtnStartClick(Sender: TObject);
var
  i: Integer;
begin
  EditText.Visible := false;
  BtnStart.Visible := false;
  BtnClear.Visible := false;

  RecreateEdits(EditText.Text);
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH (15. Mär 2013 um 11:31 Uhr) Grund: EventHandler eingefügt
  Mit Zitat antworten Zitat