Wieso geht das belegen von Taste F1 nicht? Geht doch!

Konzeptionelles, Technisches, Termine, Fragen zum Hersteller usw.

Moderator: Moderatoren

Antworten
Benutzeravatar
Bruno
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 103
Registriert: So, 16. Apr 2023 23:11
Wohnort: Lauterbach
Hat sich bedankt: 30 Mal
Danksagung erhalten: 4 Mal

Wieso geht das belegen von Taste F1 nicht? Geht doch!

Beitrag von Bruno »

Hallo Mitglieder,
Ich habe 1992 mein Dispoprogramm unter Clipper geschrieben, und 1996 auf Xbase++ umgestellt.
Ich benutze die F1 Taste für die Dispoliste ( Tbrowse der erfassten Daten )
und bis heute funktioniert die F1 Taste, so wie ich es wollte.
Ich habe hier im Forum gesucht wegen Event und Tastatur, dabei bin ich darauf gestoßen, das die F1 Taste nicht für eigene Zwecke benutzt werden könnte.
Ich hatte das damals so realisiert.

Code: Alles auswählen

while .t.                     // Endlosschleife starten
    taste1:= AppEvent( @mp1, @mp2, , 0)
    do case                   // Kontrollstruktur / Abfrage der Tasten
        case taste1 = xbeK_F1
        //K_F1     // Taste F1 gedrückt
            wselect(fenster1) // Fensterbereich auswählen
            wselect(0)
            ansicht()
            //            dislist()         // Ext. Modul starten
            wselect(fenster1) // Fensterbereich auswählen
            startbild()       // Ext. Modul starten
        case taste1 = xbeK_ALT_F1       // Taste ALT + F1 gedrückt
                firmpara()    // Ext. Modul starten
        case taste1 = xbeK_F2      // Taste F2 gedrückt
            select arbeit
            go bottom         // Ans Ende - Datenbank
            eing01()          // Ext. Modul starten
        case taste1 = xbeK_F10  .or. taste1=xbeP_Close .or. taste1= xbeK_ESC      // Taste F10 gedrckt
            appquit()
    endcase                   // Kontollstrukturabschluß
enddo                         // Schleifenabschluß
return                        // Prozedurabschluß
Ich muß natürlich dazu sagen, das dieses Programm nicht über Maus genutzt wird, außer die Dispoliste.
Dieses Programm läuft unter allen Xbase++ Versionen einschließlich 1.9.355
Niemals ein Absturz oder Fehlermeldung wegen F1 !
30 Jahre Glück ?
Gruss Bruno
Xbase++ 1.9.355 ohne eExpress
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Wieso geht das belegen von Taste F1 nicht? Geht doch!

Beitrag von AUGE_OHR »

hi Bruno ,
Bruno hat geschrieben: Do, 11. Mai 2023 23:07Dieses Programm läuft unter allen Xbase++ Versionen einschließlich 1.9.355
nEvent enthält eine "Allgemeine Nachricht" mit "xbeP_"
mp1 ist der "Tastatur Code" mit "xbeK_"
mp2 können weitere Parameter sein

Code: Alles auswählen

   nEvent := AppEvent( @mp1, @mp2,@oXbp, nTimeout )
   DO CASE
      CASE nEvent == xbe_None      // 4th Parameter nTimeout eingetreten
      CASE nEvent == xbeP_Keyboard .AND. mp1 == xbeK_F1
gruss by OHR
Jimmy
Benutzeravatar
Bruno
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 103
Registriert: So, 16. Apr 2023 23:11
Wohnort: Lauterbach
Hat sich bedankt: 30 Mal
Danksagung erhalten: 4 Mal

Re: Wieso geht das belegen von Taste F1 nicht? Geht doch!

Beitrag von Bruno »

AUGE_OHR hat geschrieben: Fr, 12. Mai 2023 0:48 hi Bruno ,
Bruno hat geschrieben: Do, 11. Mai 2023 23:07Dieses Programm läuft unter allen Xbase++ Versionen einschließlich 1.9.355
nEvent enthält eine "Allgemeine Nachricht" mit "xbeP_"
mp1 ist der "Tastatur Code" mit "xbeK_"
mp2 können weitere Parameter sein

Code: Alles auswählen

   nEvent := AppEvent( @mp1, @mp2,@oXbp, nTimeout )
   DO CASE
      CASE nEvent == xbe_None      // 4th Parameter nTimeout eingetreten
      CASE nEvent == xbeP_Keyboard .AND. mp1 == xbeK_F1
Hi Jimmy,
mich hat es verwundert, das bei meiner Suche im Forum wiederholt geschrieben wurde, das die Taste F1 nicht belegt werden könnte, da sie für Hilfe reserviert wäre.
Könntest Du mir das mit dem Timeout näher erklären ?
Gruss Bruno
Xbase++ 1.9.355 ohne eExpress
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Wieso geht das belegen von Taste F1 nicht? Geht doch!

Beitrag von AUGE_OHR »

hi Bruno,

lies bitte was zu AppEvent() im Help file steht

je nach App "Type" (VIO, Hybrid, GUI) verhält sich AppEvent() "anders" was mp1, mp2 und die Konstanten angeht
gruss by OHR
Jimmy
Antworten