Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - letzten Focus ermitteln? wie?
Fboesel - Do 09.09.04 18:35
Titel: letzten Focus ermitteln? wie?
Hallo!
ich sitze gerade an einen "kleinen" Problem:
Kann ich ermitteln, welches Feld (z.B. Edit) unmittelbar vorher den Focus gehabt hat?
z.B. ich clicke auf einen Button und möchte feststellen, welches Edit-feld unmittelbar vorher :!: aktiv war.
freue mich auf eine Antwort!
Keldorn - Do 09.09.04 19:32
was spricht dagegen, das onexit-ereignis der edits zu nutzen?
Mfg Frank
Fboesel - Do 09.09.04 21:18
Hallo Frank,
weil es von meinen logischen Programm-Ablauf nicht so einfach ist, ich müßte dann mit
Hilfsvariablen arbeiten und das hätte ich gerne vermieden.
Die Sache ist ein wenig komplexer - aber anhand eines einfachen Beispiels möchte
ich es kurz erläutern:
Ich habe z.B. 10 Editfelder und einen Button, wo drauf steht - Eingabe löschen
Wenn ich jetzt auf <Eingabe löschen> drücke, möchte ich gerne das Feld löschen aus
dem ich gerade gekommen bin.
aber danke mal fürs Erste
mfg Fboesel
Keldorn - Do 09.09.04 21:25
ich wüßte nichts anders, als das onexit zu verwenden und sehe da auch kein großes Problem drin. Brauchst auch nur eine einzige hilfsvariable:
Pseudocode:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| private der Form: Lastedit:Tedit;
... procedure formcreate... begin lastedit:=Nil; end;
procedure Editonexit... begin lastedit:=Sender; end;
procedure buttonklick... begin if lastedit<>Nil then lastedit.text:=''; end; |
Mfg Frank
Fboesel - Fr 10.09.04 08:26
hi,
ich werde es gleich mal ausprobieren.
Danke
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!