StringGadget DoubleClick
StringGadget DoubleClick
Hallo,
wie kann ich ein DoubleClick bei ein StringGadget erkennen.
Ich habe es mit EventType() = #WM_LBUTTONDBLCLK oder #PB_EventType_LeftDoubleClick probiert und es geht nicht
Danke für ein Tipps
MarcelX
wie kann ich ein DoubleClick bei ein StringGadget erkennen.
Ich habe es mit EventType() = #WM_LBUTTONDBLCLK oder #PB_EventType_LeftDoubleClick probiert und es geht nicht
Danke für ein Tipps
MarcelX
Win-10, PB 5.31 (Windows - x86)
Re: StringGadget DoubleClick
Beim StringGadget gibt es nur folgende EventType()-Ereignisse:
Mit WinAPI:
Oder du misst mit ElapsedMilliseconds() und GetDoubleClickTime_() selber die Zeit nach einem Klick. Wenn innerhalb der Doppelklickzeit erneut geklickt wird, dann ist das ein Doppelklick.
- #PB_EventType_Change
- #PB_EventType_Focus
- #PB_EventType_LostFocus
Mit WinAPI:
Code: Alles auswählen
EnableExplicit
Global StringGadgetCB
Procedure StringGadgetCB(hWnd, uMsg, wParam, lParam)
Select uMsg
Case #WM_LBUTTONDBLCLK
Debug "Doppelklick"
EndSelect
ProcedureReturn CallWindowProc_(StringGadgetCB, hWnd, uMsg, wParam, lParam)
EndProcedure
If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
StringGadget(1, 10, 10, 480, 20, "", 0)
StringGadgetCB = SetWindowLongPtr_(GadgetID(1), #GWL_WNDPROC, @StringGadgetCB())
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
EndIf
Re: StringGadget DoubleClick
Danke für den Code. So funktioniert.
Ich wollte es für mehrere StringGadget verwenden.
Wie kann ich wissen welche StringGadget den DoubleClick gilt?
Ich wollte es für mehrere StringGadget verwenden.
Code: Alles auswählen
EnableExplicit
Global StringGadgetCB
Procedure StringGadgetCB(hWnd, uMsg, wParam, lParam)
Select uMsg
Case #WM_LBUTTONDBLCLK
Debug "Doppelklick"
EndSelect
ProcedureReturn CallWindowProc_(StringGadgetCB, hWnd, uMsg, wParam, lParam)
EndProcedure
If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
StringGadget(1, 10, 10, 480, 20, "", 0)
StringGadget(2, 10, 30, 480, 20, "", 0)
StringGadgetCB = SetWindowLongPtr_(GadgetID(1), #GWL_WNDPROC, @StringGadgetCB())
StringGadgetCB = SetWindowLongPtr_(GadgetID(2), #GWL_WNDPROC, @StringGadgetCB())
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
EndIf
Win-10, PB 5.31 (Windows - x86)
Re: StringGadget DoubleClick
Code: Alles auswählen
EnableExplicit
Global StringGadgetCB
Procedure StringGadgetCB(hWnd, uMsg, wParam, lParam)
Select uMsg
Case #WM_LBUTTONDBLCLK
Debug "Doppelklick auf " + Str(GetProp_(hWnd, "PB_ID"))
EndSelect
ProcedureReturn CallWindowProc_(StringGadgetCB, hWnd, uMsg, wParam, lParam)
EndProcedure
If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
StringGadget(1, 10, 10, 480, 20, "", 0)
StringGadget(2, 10, 30, 480, 20, "", 0)
StringGadgetCB = SetWindowLongPtr_(GadgetID(1), #GWL_WNDPROC, @StringGadgetCB())
StringGadgetCB = SetWindowLongPtr_(GadgetID(2), #GWL_WNDPROC, @StringGadgetCB())
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
EndIf
Re: StringGadget DoubleClick
eine Frage,
wozu ist das gut, also wozu könnte man das brauchen... als Button?
was hast Du damit vor wenn man fragen darf. Nur aus Interesse.
danke und Grüße
wozu ist das gut, also wozu könnte man das brauchen... als Button?
was hast Du damit vor wenn man fragen darf. Nur aus Interesse.
danke und Grüße
PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE!. Kauft Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE!. Kauft Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
Re: StringGadget DoubleClick
Gute Frage udg
Ich zeige aus eine Datenbank meine Daten.
Ich verwende den gleiche Procedure für das Editieren und Anzeigen meine Daten.
In meine Daten sind es z.B. E-Mails oder URL.
Mit eine Doppelklick starte ich RunProgram(input) oder RunProgram("mailto:"+input).
Grüße
MarcelX
Ich zeige aus eine Datenbank meine Daten.
Ich verwende den gleiche Procedure für das Editieren und Anzeigen meine Daten.
In meine Daten sind es z.B. E-Mails oder URL.
Mit eine Doppelklick starte ich RunProgram(input) oder RunProgram("mailto:"+input).
Grüße
MarcelX
Win-10, PB 5.31 (Windows - x86)
Re: StringGadget DoubleClick
okay. danke für die Info.
aber die Ausgabe wieder ins Inputfeld ist eher untypisch
dafür würde ich extra Ausgabefelder anlegen.
aber was solls. es muss laufen und den Zweck erfüllen
aber die Ausgabe wieder ins Inputfeld ist eher untypisch

dafür würde ich extra Ausgabefelder anlegen.
aber was solls. es muss laufen und den Zweck erfüllen
PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE!. Kauft Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE!. Kauft Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
Re: StringGadget DoubleClick
Beispiel Excel: eine Zelle ist gleichzeitig die Anzeige und Eingabe/Änderung in ein.
Win-10, PB 5.31 (Windows - x86)
Re: StringGadget DoubleClick
jap. stimmt.marcelx hat geschrieben:Beispiel Excel: eine Zelle ist gleichzeitig die Anzeige und Eingabe/Änderung in ein.
ich hasse excel

PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE!. Kauft Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE!. Kauft Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS