Folgendes Problem:
Ich habe Gui1 & Gui2
Gui1 ist grösser als Gui2
Gui1 darf nicht WS_EX_Topmost sein
Gui2 kann nicht von Gui1 wegbewegt werden.
Gui2 soll immer direkt unter Gui1 sein.
Ich hoffe das war verständlich.
mfg Ubuntu
Folgendes Problem:
Ich habe Gui1 & Gui2
Gui1 ist grösser als Gui2
Gui1 darf nicht WS_EX_Topmost sein
Gui2 kann nicht von Gui1 wegbewegt werden.
Gui2 soll immer direkt unter Gui1 sein.
Ich hoffe das war verständlich.
mfg Ubuntu
wie wärs wenn du die position von gui1 ausliest
und dan die höhe dazurechnest und dan mit winmove die gui2 mitverschiebst?
Und wo ist das Problem?
Ok ich habs hingekriegt in dem ich beide als Toolwindow gemacht habe und ansonsten auch gleiche Stile genommen habe.
mfg Ubuntu
Hier mal meine "Lösung":
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$hGui1 = GUICreate('Gui1', 640, 480, 20, 20)
$hGui2 = GUICreate('Gui2', 400, 300, 600, 20, $WS_POPUP, $WS_EX_TOOLWINDOW)
GUISetState(@SW_SHOW, $hGui1)
GUISetState(@SW_SHOW, $hGui2)
WinActivate($hGui1)
GUIRegisterMsg($WM_MOVE, 'WM_Move')
GUIRegisterMsg($WM_ACTIVATE, 'WM_ACTIVATE')
Do
Until GUIGetMsg() = -3
Func WM_Move($hWnd, $Msg, $wParam, $lParam)
Local $pos = WinGetPos($hGui1)
WinMove($hGui2, '', $pos[0]+600, $pos[1])
Return $GUI_RUNDEFMSG
EndFunc
Func WM_ACTIVATE($hWnd, $Msg, $wParam, $lParam)
If $hWnd = $hGui2 Then WinActivate($hGui1)
Return $GUI_RUNDEFMSG
EndFunc
Vielen Dank
Mir ist nämlich aufgefallen das das doch ein bisschen buggig ist.
mfg Ubuntu