KillInputFocus() -> über welche Aktion?

Klassen, Objekte, Methoden, Instanzen

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

KillInputFocus() -> über welche Aktion?

Beitrag von Manfred »

Hi,

ich müßte irgendwie wissen, wie ein Killinputfous() erreicht wurde, sprich mit welcher Taste, oder welcher Aktion das geschah. Ich habe es mit LastAppEvent() probiert, (TAB Taste) das ergab aber eine Nummer, die ich in der Appevent.ch nicht zuordnen konnte. Ich möchte gerne wissen, ob es ins nächste Feld, oder ins vorhergehende gehen soll.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: KillInputFocus() -> über welche Aktion?

Beitrag von AUGE_OHR »

hi,
Manfred hat geschrieben:Hi,
ich müßte irgendwie wissen, wie ein Killinputfous() erreicht wurde, sprich mit welcher Taste, oder welcher Aktion das geschah. Ich habe es mit LastAppEvent() probiert, (TAB Taste) das ergab aber eine Nummer, die ich in der Appevent.ch nicht zuordnen konnte. Ich möchte gerne wissen, ob es ins nächste Feld, oder ins vorhergehende gehen soll.
alles was mit Tastatur zu tun hat muss mit der :keyboard Methode
ge"handle"t werden ...
gruss by OHR
Jimmy
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Hallo Manfred,
vergiss es! Bringt nichts!
Denke nach: Der Cursor steht in Feld 2 und klickt mit der Maus in das Eingabefeld 7.
Keine Taste wurde gedrückt!

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Hi Martin,

sorry, aber von der Maus war nicht die Rede. Ich wollte wirklich nur die TAB, oder Shift TAB Taste abfragen. Bei der Maus weiß das Programm ja wo es hingeht. Ich muß nach bestimmten Eingabefeldern die Gruppe wechseln und damit dann in das nächste Eingabefeld. Da ich gezwungen bin in einer bestimmten Reihenfolge die Rahmen (Gruppen) aufzubauen, kommt es immer wieder vor, dass ich mittendrin beim Druck der TAB Taste plötzlich auf den Buttons lande, die noch gar nicht gefragt sind.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Beitrag von Jan »

Manfred,

aber Du kannst doch in den :killInputFocus() eine Prüfroutine einbauen, die dann das gesuchte Feld je nach Ergebnis anspringt. Es ist doch volkommen egal, auf welche Weise Du ein Feld verlässt - ob mit Maus oder Tastatur. Es ist immer ein :killInputFocus().

Jan
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Ja,

watt? versteh nicht? Was meinst Du?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Hi Jimmy,

der Keyboard Slot ist belegt, aber damit bekomme ich doch nur Abfragen, die während der Eingabe gemacht werden. Ich brauche den Wert, beim Verlassen des Eingabefeldes. Und dann auch nur, wie schon erwähnt, um festzustellen, ob es TAB oder Shift TAB war.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Beitrag von Jan »

Sollte ich Dich wieder einmal verstandenhabenmiß?

Ich meinte das hier:

Code: Alles auswählen

oSle:KillInputFocus := {|x, y, oSle| IIF(dieserWert, SetAppFocus(Feld1), SetAppFocus(Feld10)}
Und statt der IIf()-Schleife kannst Du auch eine komplette Funktion reinbauen.

Jan
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Beitrag von Jan »

Hallo Manfred,

ach so. Du willst den Feld-Verlassen-Grund haben. Warum?

Jan
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Jan,

ich denke mal, Du willst meine Nerven ruinieren!?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Beitrag von Rolf Ramacher »

Hi Manfred,

hier in Beispiel von mir:

Code: Alles auswählen

   oCombo10:XbpSLE:dataLink := {|x| IIf( x==NIL, aFelder[10][2], aFelder[10][2] := x ) } 
   bAction := {|mp1, mp2, obj| obj:XbpSLE:getData(),Prf(oCombo11,oCombo12,oCombo13,aFelder)} 
Hierbei springe ich bei Veränderung in die Function Prf(). Dies kannst du genauso bei Xbpsle:KillinputFocus einsetzen .
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Beitrag von Jan »

Wieso, sind die nicht schon ruiniert? :razz:

OK, ich glaube ich komme so langsam dahinter, was Du willst. Wenn jemand das aktuelle Feld verlässt möchtest Du wissen, ob der zurück- oder vorspringt. Aber auch da ist es doch vollkommen egal, wie der User das macht. Er verlässt ein Feld, und geht in ein anderes. Was man beim Verlassen machen kann, hab ich ja skizziert. Und das gleiche kann man beim Reingehen machen. Und wenn Du dann da eine Profroutine reinsetzt die alle Felder abcheckt und darauf aufbauend eine Aktion auslöst - dann hättest Du doch sogar noch mehr erreicht. Dann wüsstest Du nicht nur, wohin es gerade geht, sondern auch, ob das vorige ordnungsgemäß ausgefüllt wurde. Was ebenfalls in die Prüfroutine einfließen könnte.

Jan
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Jan,

ich denke mal, Du meinst "dieserWert" bei Dir. Prima, nur wie kriege ich raus, ob es TAB oder SHift TAB war. Mehr will ich nicht wissen. Es gibt doch bei KillInputFocus kein nKey, wie bei KEyboard.

@Rolf,

Deinen Vorschlag verstehe ich nicht....
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Jimmy,

Du hast Recht, jetzt kapiere ich was Du meintest. Ich hatte einen Denkfehler gemacht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Antworten