AddKeyboardShortcut - Problem mit StringGadget

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

AddKeyboardShortcut - Problem mit StringGadget

Beitrag von STARGÅTE »

Tachchen,

wieso kann man im StringGadget nicht mehr nach Links und Rechts wenn man diese beiden Tasten als Shortcut definiert ?
Ich meine wenn man "kein Event" haben möchte kann man ja abfragen ob das gadget gerade aktiv ist, aber wieso wird die normale Navigation im StringGadget dann "verboten" ?

Code: Alles auswählen

OpenWindow(0, 0, 0, 800, 600, "Fenster", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
 CreateGadgetList(WindowID(0))
  StringGadget(1, 10, 10, 200, 20, "Beispieltext")
  AddKeyboardShortcut(0, #PB_Shortcut_Right, 1)
  AddKeyboardShortcut(0, #PB_Shortcut_Left, 2)

Repeat
 Event = WaitWindowEvent()
 Select Event
  Case #PB_Event_CloseWindow
   End
  Case #PB_Event_Gadget
   Select EventGadget()
    Case 0
   EndSelect
  Case #PB_Event_Menu
   Select EventMenu()
    Case 0
   EndSelect
 EndSelect
ForEver
Hat jemand eine Idee wie ich die Navigation im Stringgadget behalten kann ?, trotzdem aber ein MenüEvent bei Links Rechts bekomme ?

(OHNE API)
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Code: Alles auswählen

GetActiveGadget()
RemoveKeyboardShortcut()
anders wirds wohl ohne API nicht gehen, das Thema hatten wir schon mal
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

ok, nicht schön, geht aber ...

danke für den Hinweis...

Code: Alles auswählen

OpenWindow(0, 0, 0, 800, 600, "Fenster", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
 CreateGadgetList(WindowID(0))
  StringGadget(1, 10, 10, 200, 20, "Beispieltext")

Repeat
 Event = WaitWindowEvent()
 If GetActiveGadget() = 1
  RemoveKeyboardShortcut(0, #PB_Shortcut_Right)
  RemoveKeyboardShortcut(0, #PB_Shortcut_Left)
 Else
  AddKeyboardShortcut(0, #PB_Shortcut_Right, 1)
  AddKeyboardShortcut(0, #PB_Shortcut_Left, 2) 
 EndIf
 Select Event
  Case #PB_Event_CloseWindow
   End
  Case #PB_Event_Gadget
   Select EventGadget()
    Case 0
   EndSelect
  Case #PB_Event_Menu
   Select EventMenu()
    Case 1,2
     Debug "Key"
   EndSelect
 EndSelect
ForEver
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Antworten