Search the Community
Showing results for tags 'guicoordmode'.
-
As today I saw a @binbinhfr question here: I decide to post here this 2 following examples, which shows how to use GUICoordMode=2 + GUISetCoord() Simple example: #include <GUIConstantsEx.au3> Example() Func Example() Opt("GUICoordMode", 2) ; relative to cell mode GUICreate("My GUI Set Coord", 500, 200) GUISetCoord(20, 50) ; move the current anchor position to a precise point (20,50) GUICtrlCreateLabel("TESTING1", 0, 0, 75, 20) ; no previous control GUISetCoord(0, 0) ; move the current anchor position to a precise point (0,0) GUICtrlCreateLabel("TESTING2", -75, 0, 75, 20) ; takes account of previous control - relative to Right,Bottom corner of previously created GUICtrl*****() GUISetCoord(0, 0) ; move the current anchor position to a precise point (0,0) GUICtrlCreateLabel("TESTING3", -1, -1, 75, 20) ; does not take account of previous control (because used -1,-1 as left,Top parameters) GUISetState() While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE ExitLoop EndSwitch WEnd EndFunc ;==>Example More complex/complicated/advance example: #include <ColorConstants.au3> #include <FontConstants.au3> #include <GUIConstantsEx.au3> Example() Func Example() GUICreate("My GUI Set Coord", 500, 500) Opt("GUICoordMode", 1) ; (default) absolute coordinates still relative to the dialog box. #Region - draw background Local $iCorner = 10 GUICtrlCreateLabel("0", 100 - $iCorner, 100 - $iCorner, 100 + $iCorner * 2, 100 + $iCorner * 2) GUICtrlSetBkColor(-1, $COLOR_BLACK) GUICtrlSetFont(-1, 20, $FW_BOLD) #EndRegion - draw background Opt("GUICoordMode", 2) ; relative to cell mode #Region - MOVE ANCHOR + RESETING OFFSET GUISetCoord(0, 0) ; move the current anchor position to a precise point (0,0) GUICtrlCreateLabel("", -1, -1, 0, 0) ; reseting offset GUICtrlSetBkColor(-1, $COLOR_BLACK) #EndRegion - MOVE ANCHOR + RESETING OFFSET GUICtrlCreateLabel("1", 100, 100, 100, 100) ; anchor 0,0 moved 100,100 offset = 100,100 Right,Bottom corner = 0+100+100,0+100+100 GUICtrlSetBkColor(-1, $COLOR_AQUA) GUICtrlSetFont(-1, 20, $FW_BOLD) GUICtrlCreateLabel("2", 0, -100, 100, 100) ; anchor 200,200 moved 0,-100 offset = 100,100 Right,Bottom corner = 200+0+100,200-100+100 GUICtrlSetBkColor(-1, $COLOR_RED) GUICtrlSetFont(-1, 20, $FW_BOLD) GUICtrlCreateLabel("3", -200, 0, 100, 100) ; anchor 300,200 moved -200,0 offset = 100,100 Right,Bottom corner = 300-200+100,200+0+100 GUICtrlSetBkColor(-1, $COLOR_GREEN) GUICtrlSetFont(-1, 20, $FW_BOLD) GUICtrlCreateLabel("4", -200, -200, 100, 100) ; anchor 200,300 moved -200,-200 offset = 100,100 Right,Bottom corner = 200-200+100,300-200+100 GUICtrlSetBkColor(-1, $COLOR_OLIVE) GUICtrlSetFont(-1, 20, $FW_BOLD) GUICtrlCreateLabel("5", 0, -200, 100, 100) ; anchor 100,200 moved 0,-200 offset = 100,100 Right,Bottom corner = 100+0+100,200-200+100 = 200,100 ;~ GUICtrlSetBkColor(-1, $COLOR_MEDGRAY) GUICtrlSetBkColor(-1, $COLOR_ORANGE) GUICtrlSetFont(-1, 20, $FW_BOLD) #Region - MOVE ANCHOR GUISetCoord(-100, -100) ; move the current anchor position to a precise point (-100,-100) + prev offset 100,100 GUICtrlCreateLabel("6", 25, 25, 50, 50) ; anchor 0,0 moved 25,25 offset = 50,50 Right,Bottom corner = 75,75 GUICtrlSetBkColor(-1, $COLOR_BLUE) GUICtrlSetFont(-1, 20, $FW_BOLD) #EndRegion - MOVE ANCHOR GUISetState() While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE ExitLoop EndSwitch WEnd EndFunc ;==>Example btw. I want to thanks @Danyfirex and @Nine for the feedback they gave back in September when we discussed it in the background.