Gibt es eine Möglichkeit das Label dynamisch an die GUI bzw. ans Group Control anzupassen, so dass beim Vergrößern bzw. Verkleinern (inkl. maximieren/minimieren des Fensters) das Label enstprechend vergrößert / verkleinert wird?
Spoiler anzeigen
#include <GUIConstantsEx.au3>
#include <StructureConstants.au3>
#include <WindowsConstants.au3>
Global $hGUI = GUICreate("Test", 800, 200, -1, -1, BitOR($WS_MINIMIZEBOX, $WS_SIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU, $WS_MAXIMIZEBOX, $WS_TABSTOP))
Global $group = GUICtrlCreateGroup("", 224, 0, 569, 92)
Global $title = GUICtrlCreateLabel("Label soll sich dyn. anpassen", 228, 14, 559, 75)
GUICtrlSetColor(-1, 0x000080)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
Resize_Font()
[/autoit] [autoit][/autoit] [autoit]Global $aWDim = WinGetPos($hGUI)
Global $w = $aWDim[2], $h = $aWDim[3]
GUIRegisterMsg($WM_GETMINMAXINFO, "WM_GETMINMAXINFO")
GUIRegisterMsg($WM_SIZE, "WM_SIZE")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
GUIDelete($hGUI)
Exit
Case $GUI_EVENT_RESIZED, $GUI_EVENT_MAXIMIZE, $GUI_EVENT_RESTORE
Resize_Font()
EndSwitch
WEnd
Func Resize_Font()
$aPOS = ControlGetPos("", "", $group)
GUICtrlSetFont($title, $aPOS[2] / 17, 400, 0, "Impact")
EndFunc
Func WM_SIZE($hWnd, $Msg, $wParam, $lParam)
Resize_Font()
Return "GUI_RUNDEFMSG"
EndFunc
Func WM_GETMINMAXINFO($hWnd, $Msg, $wParam, $lParam)
Local $minmaxinfo = DllStructCreate("int;int;int;int;int;int;int;int;int;int", $lParam)
DllStructSetData($minmaxinfo, 7, $w) ; min X
DllStructSetData($minmaxinfo, 8, $h) ; min Y
Return "GUI_RUNDEFMSG"
EndFunc ;==>WM_GETMINMAXINFO
Gruß,
UEZ