Hallo,
gibt es eine Möglichkeit, einen xbpPushButton mit der <RETURN>-Taste zu bestätigen? Ich arbeite mit Xbase++ 1.9 und XClass 4.0. Durch die Einstellungen ::EnableClipperKeys(.T.) und ::EnableEscKey(.T.) kann ich zwar z. B. die SLEs (dsSle) mit <RETURN> verlassen, nur bei den Buttons funktioniert das nicht.
Viele Grüße,
Klaus
xbpPushButton mit <RETURN> bestätigen [ERLEDIGT]
Moderator: Moderatoren
xbpPushButton mit <RETURN> bestätigen [ERLEDIGT]
Zuletzt geändert von KlausL am Di, 01. Jan 2013 15:13, insgesamt 1-mal geändert.
- Jan
- Marvin
- Beiträge: 14641
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 87 Mal
- Kontaktdaten:
Re: xbpPushButton mit <RETURN> bestätigen
Hallo Klaus,
ich arbeite nicht mit XClass. Aber ich erzeuge dieses Verhalten durch diese Eventschleife in der Main()
Jan
ich arbeite nicht mit XClass. Aber ich erzeuge dieses Verhalten durch diese Eventschleife in der Main()
Code: Alles auswählen
DO WHILE .T.
nEvent := AppEvent(@mp1, @mp2, @oEventXbp)
// Für einige XBase-Parts ein anderes Tastaturverhalten einsetzen
IF nEvent == xbeP_Keyboard //Ist das überhaupt ein Tastaturevent? Ansonsten aus Performancegründen die ganze Schleife überspringen
IF mp1 = xbeK_ENTER // Ist das ein Enter? Darum geht es schließlich.
IF oEventXbp:isDerivedFrom("XBPPUSHBUTTON") // Ist das ein Pushbutton?
PostAppEvent(xbeP_Activate, NIL, NIL, oEventXbp) // Dann auslösen, wie mit Leertaste
ELSEIF oEventXbp:isDerivedFrom("XbpBrowse") // Ist das eine Browse-Spalte?
PostAppEvent(xbeK_RIGHT, NIL, NIL, oEventXbp) // Dann in die nächste Spalte springen, wie mit PfeilRechts
ELSEIF oEventXbp:isDerivedFrom("XbpCheckBox") // Ist das eine Checkbox?
PostAppEvent(xbeK_TAB, NIL, NIL, oEventXbp) // Dann verlasse, wie mit Tab
ELSEIF oEventXbp:isDerivedFrom("XbpComboBox") // Ist das eine Combobox?
PostAppEvent(xbeK_TAB, NIL, NIL, oEventXbp) // Dann verlasse, wie mit Tab
ELSEIF oEventXbp:isDerivedFrom("XbpSle") // Ist das ein SLE?
PostAppEvent(xbeK_TAB, NIL, NIL, oEventXbp) // Dann verlasse, wie mit Tab
ENDIF
ELSEIF mp1 = xbeK_ALT_F4 // Möchte jemand das Programm mit Alt F4 beenden?
mp1 := xbeK_ALT // Das Menü aktivieren
ENDIF
ENDIF
oEventXbp:handleEvent(nEvent, mp1, mp2)
ENDDO
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
-
- 1000 working lines a day
- Beiträge: 525
- Registriert: Mi, 01. Feb 2006 16:22
- Wohnort: 06618 Naumburg
Re: xbpPushButton mit <RETURN> bestätigen
oder einfach den Keyboard-Slot des Buttons verwenden:
Code: Alles auswählen
pb1:keyboard:= {|mp1,mp2,oXbp|IIF(mp1=xbeK_RETURN,mache_das(),NIL) }
- Jan
- Marvin
- Beiträge: 14641
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 87 Mal
- Kontaktdaten:
Re: xbpPushButton mit <RETURN> bestätigen
Hallo Peter,
stimmt, das geht auch. Dann muß man das aber bei jedem einzelnen Button machen. Beim Eintrag in die Eventschleife muß man sich aber bei zukünftigen Buttons nicht mehr drum kümmern.
Jan
stimmt, das geht auch. Dann muß man das aber bei jedem einzelnen Button machen. Beim Eintrag in die Eventschleife muß man sich aber bei zukünftigen Buttons nicht mehr drum kümmern.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2828
- Registriert: Fr, 10. Feb 2006 9:51
- Wohnort: Aachen
- Hat sich bedankt: 259 Mal
- Danksagung erhalten: 12 Mal
- Kontaktdaten:
Re: xbpPushButton mit <RETURN> bestätigen
Am saubersten ist es, eine eigene Klasse von XbpPushbutton abzuleiten und darin die gewünschte Eigenschaft zu implementieren.
Dann funktioniert es auch grundsätzlich ohne die Eventschleife verändern zu muessen.
Uli
Dann funktioniert es auch grundsätzlich ohne die Eventschleife verändern zu muessen.
Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Re: xbpPushButton mit <RETURN> bestätigen
Hallo Jan, Peter, Uli,
zunächst nochmals Danke für Eure Lösungen.
ich denke, ich werde es mit der Keyboard-Methode realisieren.
Viele Grüße,
Klaus
zunächst nochmals Danke für Eure Lösungen.
ich denke, ich werde es mit der Keyboard-Methode realisieren.
Viele Grüße,
Klaus