WinAPP alle Tasten an Hauptprogramm

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

WinAPP alle Tasten an Hauptprogramm

Beitrag von mk-soft »

Hallo,

Mit WindowCallback und WM_CHAR geht es leider nicht, sobald ein Gadget aktiv ist.
Möchte aber immer das die Zeichen von Hauptprogramm verwaltet wird.

:cry:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
Tommy
Spassvogel
Beiträge: 319
Registriert: 17.10.2013 14:36

Re: WinAPP alle Tasten an Hauptprogramm

Beitrag von Tommy »

Wo is die Frage ?
Zuletzt geändert von Tommy am 27.01.2015 11:18, insgesamt 2-mal geändert.
PB 5.41 x64
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Re: WinAPP alle Tasten an Hauptprogramm

Beitrag von edel »

So, mal gucken ob ich dich richtig verstanden habe ;)

SetWindowSubclass findest du hier im Forum.

Code: Alles auswählen

Macro LoWord(Value)
  (Value & $FFFF)     
EndMacro

Procedure Callback(hWnd, Msg, wParam, lParam, id, uData)
  
  If Msg = #WM_PARENTNOTIFY
    
    If Loword(wParam) = #WM_CREATE
      SetWindowSubclass(lParam, @Callback(), 0, 0)
    EndIf
    
    If Loword(wParam) = #WM_DESTROY
      RemoveWindowSubclass(lParam, @Callback(), 0)
    EndIf    
    
  EndIf  
  
  If Msg = #WM_CHAR
    Debug "Gadget:" + hWnd + " | CHAR : " + Chr(wParam)
  EndIf
  
  ProcedureReturn DefSubclassProc(hWnd, Msg, wParam, lParam)
EndProcedure

Procedure Main()
  Protected Event
  
  If OpenWindow(0, #PB_Ignore, #PB_Ignore, 600, 400, "")   
    SetWindowSubclass(WindowID(0), @Callback(), 0, 0)
    
    ButtonGadget(0, 10, 10, 100, 23, "Button")
    StringGadget(1, 10, 40, 100, 23, "")
    
    ContainerGadget(2, 130, 10, 120, 100, #PB_Container_Flat)
    StringGadget(#PB_Any, 10, 10, 100, 23, "")
    
    Repeat
      Event = WaitWindowEvent()
      
    Until Event = #PB_Event_CloseWindow
    
    
  EndIf
  
EndProcedure:Main()
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: WinAPP alle Tasten an Hauptprogramm

Beitrag von mk-soft »

Danke,

werde ich mir nächste Woche anschauen.

Ich habe es zur Zeit mit KeyboardHook gelöst...

FF :)
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Antworten