kann focus nicht ändern.

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut

kann focus nicht ändern.

Beitragvon haderlump » 11. Dez 2017, 04:21 kann focus nicht ändern.

Hallo zusammen
Ich habe ein Formular. Da gibt es u.A. einen Button (der verschiedene Werte löscht), der standardmäßig den Focus hat.
Nun habe ich auch noch ein paar Editfelder. Ich würde gern den Focus, jeweils beim Anklicken dieser Felder, auf dieses jeweilige Feld verlagern. Eines hat die Bezeichnung zwischenzaehler1.
Ich habe das mit
Code: Alles auswählen
zwischenzaehler1.setfocus ;

probiert, aber es rührt sich nichts, der Focus bleibt auf dem alten Button.
Wenn ich nun Werte im Editfeld verändere und gewohnheitsmäßig auf Enter drücke, sind die ganzen anderen Werte gelöscht.
Muß ich da den Focus vom Button explitit löschen, und wenn ja wie geht das. Ich habe zwar eine Methode "setfocus" gefunden aber nicht clear oder lost oder ähnlich.
Gruß Fritz
haderlump
 
Beiträge: 88
Registriert: 18. Jan 2013, 09:29
OS, Lazarus, FPC: Widows XP, Lazarus 1.6 | 
CPU-Target: Celeron
Nach oben

Beitragvon MacWomble » 11. Dez 2017, 09:06 Re: kann focus nicht ändern.

Vermutlich liegt dein Fokus auf dem Textfeld, der Button ist zusätzlich aktiv, da er auf Default=True gesetzt ist, Damit ist er der Defaultbutton, der beim Drücken von Return ausgelöst wird.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 419
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 18.3 Cinnamon / CodeTyphon Generation V Plan 6.00 (FPC 3.1.1) | 
CPU-Target: 32/64 Nit
Nach oben

Beitragvon m.fuchs » 11. Dez 2017, 09:07 Re: kann focus nicht ändern.

Wenn ich dich richtig verstehe, setzt du den Focus in dem Moment wo der User in das entsprechende TEdit klickt?
Warum eigentlich? In dem Moment sollte das Control doch automatisch den Focus erhalten.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1709
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.6, FPC 3.0) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon h-elsner » 11. Dez 2017, 09:09 Re: kann focus nicht ändern.

haderlump hat geschrieben:, der Focus bleibt auf dem alten Button.


Hallo Fritz,
der Button bekommt doch automatisch den Focus (zurück), selbst wenn du nur die Maus drüber bewegst. Das macht ja auch Sinn, denn sonst könntest du den Button ja nicht drücken.
Du musst dir im Programm 'merken', welches Control vorher den Focus hatte und dieses dann im OnClick Event das Buttons löschen.
Ich weiß nicht, ob das elegant ist, aber ich mache das mit dem .Tag des jeweiligen Controls. Densetzt du auf einen definierten Wert, wenn das Control den Focus erhält und zurück auf Null, wenn du löschst oder wenn ein anders Control, das du seperat löschen wills, den Focus erhält. Bei dieser Vorgensweise musst du aber den Überblick behalten, was wann gesetzt/zurückgesetzt wird. --> Ausgiebig testen...

Gruß HE
h-elsner
 
Beiträge: 33
Registriert: 24. Jul 2012, 14:42
Wohnort: Illertissen
OS, Lazarus, FPC: LINUX Mint18.3, Win10, Lazarus 1.8, FPC3.0.4 | 
CPU-Target: 64Bit
Nach oben

Beitragvon m.fuchs » 11. Dez 2017, 09:17 Re: kann focus nicht ändern.

h-elsner hat geschrieben:der Button bekommt doch automatisch den Focus (zurück), selbst wenn du nur die Maus drüber bewegst

Nein.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1709
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.6, FPC 3.0) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon Bitschubser » 11. Dez 2017, 16:50 Re: kann focus nicht ändern.

Möglicherweise wird hier "focused" und "default" verwechselt?
Ist ja auch bei "modernen" OS alles kaum noch/gar nicht mehr zu erkennne.
Bitschubser
 
Beiträge: 61
Registriert: 27. Aug 2012, 14:43

Beitragvon haderlump » 11. Dez 2017, 18:54 Re: kann focus nicht ändern.

Und da fiel es ihm wie Schuppen von den Haaren.
Bitschubser, du hast den Kopf auf den Nagel getroffen. Ich habe den Focus mit default verwechselt.
Jetzt geht es so wie ich es mir vorgestellt habe.

ich liebe euch alle :P :P :P :P
haderlump
 
Beiträge: 88
Registriert: 18. Jan 2013, 09:29
OS, Lazarus, FPC: Widows XP, Lazarus 1.6 | 
CPU-Target: Celeron
Nach oben

• Themenende •

Zurück zu Freepascal



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

porpoises-institution
accuracy-worried