Seite 1 von 1

shortcut

Verfasst: 28.07.2016 19:40
von kartmanne
HI,
ich möchte in einem Fenster auf einen Tastendruck reagieren. Dazu benutze ich addwindowshortcut(...) und frage die Nummer hinterher in einer event-schleife ab. Funzt auch gut.

Ich frage ein Minus-Zeichen ab. Dazu gibts den #pb_shortcut_substract. das ist aber das Minus-Zeichen auf dem Nummernblock. Laptops haben oft keinen Nummernblock. Auf so einem Laptop wird der #pb_shortcut_substract nicht gemeldet.

Wie heißt der shortcut für die "normale" Tastatur? In der pb Hilfe find ich den irgendwie nicht...

Re: shortcut

Verfasst: 28.07.2016 19:46
von RSBasic
Die Konstante scheint nicht definiert zu sein, aber damit klappt es:

Code: Alles auswählen

EnableExplicit

#PB_Shortcut_Minus = 189 

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  AddKeyboardShortcut(0, #PB_Shortcut_Minus, 1)
  
  Repeat
    Select WaitWindowEvent()
      Case #PB_Event_Menu
        Select EventMenu()
          Case 1
            Debug "a"
        EndSelect
      Case #PB_Event_CloseWindow
        End
    EndSelect
  ForEver
EndIf

Re: shortcut

Verfasst: 28.07.2016 19:59
von kartmanne
HI,

ok. Danke. Da ich beide Minüsse(:-) ) brauche, muß ich nun zwei Konstanten verwenden. Kieg ich wohl hin.

Gibt's für diese codes eine Tabelle? ASCII ist's ja nicht.

Re: shortcut

Verfasst: 28.07.2016 20:08
von RSBasic
Das sind Virtual-Key Codes.

Wenn du den Wert der Taste selber ermitteln möchtest:

Code: Alles auswählen

EnableExplicit

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  
  Repeat
    Select WaitWindowEvent()
      Case #WM_KEYDOWN
        Debug EventwParam()
      Case #PB_Event_CloseWindow
        End
    EndSelect
  ForEver
EndIf
(einfach die gewünschte Taste drücken)

Ansonsten hier eine vollständige Liste: https://msdn.microsoft.com/de-de/librar ... s.85).aspx

Re: shortcut

Verfasst: 28.07.2016 20:13
von kartmanne
HI,

ahhso.

Danke!