Seite 1 von 1

Problem mit fehlendem Ereignis (Event) Mausklick im Textfeld

Verfasst: 23.09.2015 18:14
von max11
Hallo Forum,

Meine Frage gibt es in Purebasic eine Möglichkeit die fehlenden Ereignise Mausklicks nach zu bauen. Wie Sie bei anderen z.b. bei ListViewGadget vorhanden sind.

EventType()
#PB_EventType_LeftClick
#PB_EventType_LeftDoubleClick
#PB_EventType_RightClick

Wenn ja bitte ein beispiel, danke

Re: Problem mit fehlendem Ereignis (Event) Mausklick im Text

Verfasst: 23.09.2015 18:42
von Omi
Hi max,

ja! Ich kenne aber auch nur Methoden über die jeweilige API des Betriebssystems.
Die Beispiele decken auch nicht alle Deine Wünsche ab, trotzdem ...
Windows:
http://www.rsbasic.de/aktualisierung/wi ... abfrage.pb
Linux:
http://www.chabba.de/Linux/TextGadget/T ... ckEvent.pb
MacOS:
http://www.purebasic.fr/english/viewtop ... textgadget

Ich hoffe die Links linken :wink:
Gruß, Charly

Re: Problem mit fehlendem Ereignis (Event) Mausklick im Text

Verfasst: 23.09.2015 18:48
von RSBasic
Für Windows:

Code: Alles auswählen

EnableExplicit

Global TextProc

Procedure TextProc(hWnd, uMsg, wParam, lParam)
  Select uMsg
    Case #WM_LBUTTONUP
      Debug "#PB_EventType_LeftClick"
    Case #WM_LBUTTONDBLCLK
      Debug "#PB_EventType_LeftDoubleClick"
    Case #WM_RBUTTONUP
      Debug "#PB_EventType_RightClick"
    Case #WM_RBUTTONDBLCLK
      Debug "#PB_EventType_RightDoubleClick"
  EndSelect
  
  ProcedureReturn CallWindowProc_(TextProc, hWnd, uMsg, wParam, lParam)
EndProcedure

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  TextGadget(1, 10, 10, 200, 20, "Text, Text und nochmal Text", #SS_NOTIFY)
  
  TextProc = SetWindowLongPtr_(GadgetID(1), #GWL_WNDPROC, @TextProc())
  
  Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf

Re: Problem mit fehlendem Ereignis (Event) Mausklick im Text

Verfasst: 23.09.2015 19:09
von max11
Vielen Dank für Eure Beiträge, die haben mich weiter gebracht.