Hallo
Hätte 2 Fragen zum Thema TextLabel.
Wie kann man einem Textlabel das WS_EXPARENTDRAG Style geben.
1. Frage:
---------
TextGadget(3, 10, 10, 250, 20, "TextLabel")
Handle = GadgetID(3)
SetWindowLong_(Handle,#GWL_EXSTYLE,GetWindowLong_(Handle,#GWL_EXSTYLE)&~ $00100000)
Mein Beispiel funktioniert nicht.
2. Frage:
--------
Wie kann man ein Textlabel per Mausklick dazu bringen, einen Windowsevent() auszulösen ?
Bei anderen Programmiersprachen ist das ohne Probleme möglich.
Grüße
lite
Textlabel WS_EXPARENTDRAG
Re: Textlabel WS_EXPARENTDRAG
Code: Alles auswählen
#SS_NOTIFY
Code: Alles auswählen
EnableExplicit
Define EventID
If OpenWindow(0,0,0,500,400,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
TextGadget(1, 10, 10, 100, 20, "Hallo", #SS_NOTIFY)
Repeat
EventID=WaitWindowEvent()
If EventID=#PB_Event_Gadget
Select EventGadget()
Case 1
Debug "Klick"
EndSelect
EndIf
If EventID = #PB_Event_CloseWindow
End
EndIf
ForEver
EndIf
- 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
Re: Textlabel WS_EXPARENTDRAG
Aber was ist jetzt: WS_EXPARENTDRAG
kennt ja nicht mal die MSDN?
kennt ja nicht mal die MSDN?
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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Re: Textlabel WS_EXPARENTDRAG
ich vermute mal, dass WS_EX_PARENTDRAG gemeint ist. Dasts-soft hat geschrieben:Aber was ist jetzt: WS_EXPARENTDRAG
kommt wohl aus der AutoIt-Szene.
Grüße ... Kiffi
a²+b²=mc²
- 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
Re: Textlabel WS_EXPARENTDRAG
Danke,
da kann man ja lange suchen
Da es ein Fensterstil ist (zumindest dem Namen nach), verstehe ich sowieso
den Zusammenhang mit einem Control nicht so ganz. Vielleicht erleuchtet uns
der Threadsteller noch.
da kann man ja lange suchen

Da es ein Fensterstil ist (zumindest dem Namen nach), verstehe ich sowieso
den Zusammenhang mit einem Control nicht so ganz. Vielleicht erleuchtet uns
der Threadsteller noch.
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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Re: Textlabel WS_EXPARENTDRAG
Danke an RSBasic, genau dannach hab ich gesucht.
2.Frage:
Mit WS_EX_PARENTDRAG kann das Windowsfenster verschoben werden, den man das Attribute gibt. Ist sehr nützlich.
Hier Beispielcode in .au3.
Grüße
Lite
2.Frage:
Mit WS_EX_PARENTDRAG kann das Windowsfenster verschoben werden, den man das Attribute gibt. Ist sehr nützlich.
Hier Beispielcode in .au3.
Code: Alles auswählen
#include <GUIConstantsEx.au3>
GUICreate("My GUI") ; will create a dialog box that when displayed is centered
$test=GUICtrlCreateLabel ("Label ", 100, 100, 713, 46,-1)
$hwnd = GUICtrlGetHandle($test)
$GWL_EXSTYLE = 0xFFFFFFEC
_WinAPI_SetWindowLong($hWnd, $gwl_exstyle, $GUI_WS_EX_PARENTDRAG)
GUISetState(@SW_SHOW) ; will display an empty dialog box
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
WEnd
exit
Func _WinAPI_SetWindowLong($hWnd, $iIndex, $iValue)
; _WinAPI_SetLastError(0) ; as suggested in MSDN
Local $sFuncName = "SetWindowLongW"
If @AutoItX64 Then $sFuncName = "SetWindowLongPtrW"
Local $aResult = DllCall("user32.dll", "long_ptr", $sFuncName, "hwnd", $hWnd, "int", $iIndex, "long_ptr", $iValue)
If @error Then Return SetError(@error, @extended, 0)
Return $aResult[0]
EndFunc ;==>_WinAPI_SetWindowLong
Lite