![]() |
Alternative zu SetFocus
Hi,
in meinem Vokabeltrainerprogramm habe ich Knöpfe erstellt um Sonderzeichen, die es nicht auf regelmäßigen Tastaturen gibt, in ein Edit einzufügen. In der procedure des Knopfes habe ich die Zeile
Delphi-Quellcode:
benutzt. Wenn ich jetzt mein Programm laufen lasse, ein paar Buchstaben ins Edit eingebe und anschließend den Sonderzeichenknopf drück markiert SetFocus den ganzen Text!
Edit1.SetFocus;
Was muss ich an SetFocus ändern um den Cursor am Ende des Edit zu schicken? |
Re: Alternative zu SetFocus
Wenn du TSpeedButton verwendest (auf seite "Zusätzlich") brauchst du Setfocus gar nicht
verwenden. |
Re: Alternative zu SetFocus
Ansonsten ein Beispiel, wo ein Zeichen an der Cursorposition eingefügt wird:
Delphi-Quellcode:
Cu, Frank
procedure TForm1.Button1Click(Sender: TObject);
Var AltAutoSelect : Boolean; begin Edit1.SelText := 'ö'; AltAutoSelect := Edit1.AutoSelect; Edit1.AutoSelect := False; Edit1.SetFocus; Edit1.AutoSelect := AltAutoSelect; end; |
Re: Alternative zu SetFocus
:wiejetzt:
|
Re: Alternative zu SetFocus
Was verstehts du nicht? :?:
|
Re: Alternative zu SetFocus
Zitat:
|
Re: Alternative zu SetFocus
Also, ein weiteres Beispiel:
Delphi-Quellcode:
Für weitere Hilfe bitte F1 in der Delphi IDE...
procedure TForm1.Button1Click(Sender: TObject);
begin // Cursor hinter letztes Zeichen Edit1.SelStart := Length(Edit1.Text); // ein kleines 'ö' an Position schreiben Edit1.SelText := 'ö'; // Focus setzten Edit1.SetFocus; // Markierung aufheben Edit1.SelStart := Length(Edit1.Text); end; Cu, Frank |
Re: Alternative zu SetFocus
Oder
Delphi-Quellcode:
Ein Tipp:
i := Edit1.SelStart;
Edit1.SelText := 'ö'; Edit1.SetFocus; Edit1.SelStart := i + 1; // ein Zeichen weiter hinten einfügen, also hinter das ö Die OH bringt wirklich viel zum Vorschein, wenn man etwas zu bestimmten Befehlen wissen will. Und falls die doch mal etwas nicht wissen sollte ... die Suche in der DP, Google, MSDN und wer weiß wo noch verrät oftmals auch noch massig :shock: |
Re: Alternative zu SetFocus
OK. Danke.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz