Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Edit voll => ins nächste springen? (https://www.delphipraxis.net/138729-edit-voll-%3D-ins-naechste-springen.html)

Z4ppy 16. Aug 2009 14:57


Edit voll => ins nächste springen?
 
Ich möchte in die nächste Version meines Sudoku Solvers (Link siehe Signatur) einbauen, dass der Cursor direkt zum nächsten Feld springt, wenn man eine Zahl eingegeben hat.
Gibt es eine elegantere Methode, als für jedes Feld im OnKeyPress-Ereignis zu prüfen, ob das Feld voll ist und dann den Focus aufs nächste zu setzen?

MfG Z4ppy

DeddyH 16. Aug 2009 15:28

Re: Edit voll => ins nächste springen?
 
Schreib doch eine einzige OnChange()-Methode und weise diese allen betroffenen Edits zu. Darin kannst Du über den Sender-Parameter auswerten, welches Edit es gerade betrifft.

Matze 16. Aug 2009 15:39

Re: Edit voll => ins nächste springen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe dir mal was angehängt. Nicht schön, aber selten.

Edit: Och Mensch. Vor lauter Delphi habe ich Deddys Beitrag nicht mitbekommen. Das im Anhang ist genau das, was Deddy vorgeschlagen hat.

DeddyH 16. Aug 2009 15:47

Re: Edit voll => ins nächste springen?
 
Ich hatte da eher an so etwas gedacht:
Delphi-Quellcode:
procedure TfrmMain.EditChange(Sender: TObject);
begin
  if (Sender is TEdit) and (Length(TEdit(Sender).Text) > 1) then
    Perform(WM_NEXTDLGCTL,0,0);
end;
Dazu braucht man kein FindComponent, das kann man schön geschmeidig im OI zuweisen :zwinker:

Z4ppy 16. Aug 2009 15:56

Re: Edit voll => ins nächste springen?
 
Ich werd es so lösen, wie Matze vorgeschlagen hat, da ich so ein Array of TEdit ohnehin schon habe ;)
Danke für die schnellen Antworten :)

MfG Z4ppy

Matze 16. Aug 2009 16:17

Re: Edit voll => ins nächste springen?
 
Zitat:

Zitat von DeddyH
Dazu braucht man kein FindComponent, das kann man schön geschmeidig im OI zuweisen :zwinker:

Das ist natürlich schöner jo. Ich wollte nur mal was zeigen, das man ohne große Rückfragen auch versteht. Gut Ausrede, gell. :mrgreen:

DeddyH 16. Aug 2009 16:17

Re: Edit voll => ins nächste springen?
 
:thumb: :lol:

jaenicke 16. Aug 2009 16:32

Re: Edit voll => ins nächste springen?
 
Für meinen Sudoku-Löser und Generator habe ich ganz ganz ausnahmsweise einmal ein StringGrid benutzt. Da gehen dann neben dem automatischen Wechsel zum nächsten Feld auch die Pfeiltasten zur Navigation, genauso wie Tab um zum nächsten Block zu kommen, ...
http://www.delphi-forum.de/viewtopic.php?t=48160


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz