Influx Posted January 14, 2009 Posted January 14, 2009 How do i make an effect similar to $WS_SIZEBOX or $_WS_THICKFRAME without allowing the GUI to resize?
ResNullius Posted January 14, 2009 Posted January 14, 2009 Influx said: How do i make an effect similar to $WS_SIZEBOX or $_WS_THICKFRAME without allowing the GUI to resize?One way:#include <WindowsConstants.au3> #include <GUIConstantsEx.au3> ;Const $SC_MOVE = 0xF010 ;Const $SC_MINIMIZE = 0xF020 Const $SC_SIZE = 0xF000 $gui = GUICreate("", 300, 200,-1,-1,$WS_SIZEBOX) GUISetState(@SW_SHOW) GUIRegisterMsg($WM_SYSCOMMAND, "On_WM_SYSCOMMAND") While GUIGetMsg() <> $GUI_EVENT_CLOSE WEnd Func On_WM_SYSCOMMAND($hWnd, $Msg, $wParam, $lParam) If BitAND ($wParam, 0xFFF0) = $SC_SIZE Then Return 1 Else Return $GUI_RUNDEFMSG EndIf EndFunc
MrCreatoR Posted January 14, 2009 Posted January 14, 2009 Or another one (with some kind of border): #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> $gui = GUICreate("Test", 300, 200, -1, -1, -1, $WS_EX_CLIENTEDGE) GUISetState(@SW_SHOW) While GUIGetMsg() <> $GUI_EVENT_CLOSE WEnd Reveal hidden contents Using OS: Win 7 Professional, Using AutoIt Ver(s): 3.3.6.1 / 3.3.8.1 AutoIt Russian Community My Work... Spoiler Projects: ATT - Application Translate Tool {new}| BlockIt - Block files & folders {new}| SIP - Selected Image Preview {new}| SISCABMAN - SciTE Abbreviations Manager {new}| AutoIt Path Switcher | AutoIt Menu for Opera! | YouTube Download Center! | Desktop Icons Restorator | Math Tasks | KeyBoard & Mouse Cleaner | CaptureIt - Capture Images Utility | CheckFileSize ProgramUDFs: OnAutoItErrorRegister - Handle AutoIt critical errors {new}| AutoIt Syntax Highlight {new}| Opera Library! | Winamp Library | GetFolderToMenu | Custom_InputBox()! | _FileRun UDF | _CheckInput() UDF | _GUIInputSetOnlyNumbers() UDF | _FileGetValidName() UDF | _GUICtrlCreateRadioCBox UDF | _GuiCreateGrid() | _PathSplitByRegExp() | _GUICtrlListView_MoveItems - UDF | GUICtrlSetOnHover_UDF! | _ControlTab UDF! | _MouseSetOnEvent() UDF! | _ProcessListEx - UDF | GUICtrl_SetResizing - UDF! | Mod. for _IniString UDFs | _StringStripChars UDF | _ColorIsDarkShade UDF | _ColorConvertValue UDF | _GUICtrlTab_CoverBackground | CUI_App_UDF | _IncludeScripts UDF | _AutoIt3ExecuteCode | _DragList UDF | Mod. for _ListView_Progress | _ListView_SysLink | _GenerateRandomNumbers | _BlockInputEx | _IsPressedEx | OnAutoItExit Handler | _GUICtrlCreateTFLabel UDF | WinControlSetEvent UDF | Mod. for _DirGetSizeEx UDF Examples: ScreenSaver Demo - Matrix included | Gui Drag Without pause the script | _WinAttach()! | Turn Off/On Monitor | ComboBox Handler Example | Mod. for "Thinking Box" | Cool "About" Box | TasksBar Imitation Demo Like the Projects/UDFs/Examples? Please rate the topic (up-right corner of the post header: Rating ) * === My topics === * ================================================== ================================================== AutoIt is simple, subtle, elegant. © AutoIt Team
Zedna Posted January 14, 2009 Posted January 14, 2009 Another way: #include <GUIConstants.au3> Global $size, $width, $height $gui = GUICreate("Test GUI",500,500,-1,-1,BitOR($GUI_SS_DEFAULT_GUI,$WS_SIZEBOX)) $size = WinGetPos($gui) $width = $size[2] ; width of window (GUICreate is ClientSize) $height = $size[3] ; height of window (GUICreate is ClientSize) GUISetState (@SW_SHOW) GUIRegisterMsg($WM_GETMINMAXINFO, "MY_WM_GETMINMAXINFO") While 1 $msg = GUIGetMsg() If $msg = $GUI_EVENT_CLOSE Then ExitLoop Wend Func MY_WM_GETMINMAXINFO($hWnd, $Msg, $wParam, $lParam) $minmaxinfo = DllStructCreate("int;int;int;int;int;int;int;int;int;int",$lParam) DllStructSetData($minmaxinfo,7,$width) ; min X DllStructSetData($minmaxinfo,8,$height) ; min Y DllStructSetData($minmaxinfo,9,$width) ; max X DllStructSetData($minmaxinfo,10,$height) ; max Y Return 0 EndFunc Resources UDF ResourcesEx UDF AutoIt Forum Search
MrCreatoR Posted January 14, 2009 Posted January 14, 2009 And another one - This one is the best i think , because there is the same borders but without ability to resize and even without the mouse cursor changing "effect": #include <GuiConstantsEx.au3> #include <WindowsConstants.au3> #include <WinAPI.au3> ; Global $GUI = GUICreate("Resize Borders without resizing - Example", 400, 330, -1, -1, _ BitOR($GUI_SS_DEFAULT_GUI, $WS_THICKFRAME), $WS_EX_CLIENTEDGE) $BackPicID = GUICtrlCreatePic(@WindowsDir & "\Web\Wallpaper\Windows XP.jpg", 0, 0, 400, 330) GUICtrlSetState(-1, $GUI_DISABLE) GUIRegisterMsg($WM_NCHITTEST, "WM_NCHITTEST") GUISetState() While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func WM_NCHITTEST($hWnd, $iMsg, $iwParam, $ilParam) If $hWnd <> $GUI Or $iMsg <> $WM_NCHITTEST Then Return $GUI_RUNDEFMSG Local $iRet = _WinAPI_DefWindowProc($hWnd, $iMsg, $iwParam, $ilParam) For $i = 10 To 18 If $i = $iRet Then Return 1 Next Return $iRet EndFunc Reveal hidden contents Using OS: Win 7 Professional, Using AutoIt Ver(s): 3.3.6.1 / 3.3.8.1 AutoIt Russian Community My Work... Spoiler Projects: ATT - Application Translate Tool {new}| BlockIt - Block files & folders {new}| SIP - Selected Image Preview {new}| SISCABMAN - SciTE Abbreviations Manager {new}| AutoIt Path Switcher | AutoIt Menu for Opera! | YouTube Download Center! | Desktop Icons Restorator | Math Tasks | KeyBoard & Mouse Cleaner | CaptureIt - Capture Images Utility | CheckFileSize ProgramUDFs: OnAutoItErrorRegister - Handle AutoIt critical errors {new}| AutoIt Syntax Highlight {new}| Opera Library! | Winamp Library | GetFolderToMenu | Custom_InputBox()! | _FileRun UDF | _CheckInput() UDF | _GUIInputSetOnlyNumbers() UDF | _FileGetValidName() UDF | _GUICtrlCreateRadioCBox UDF | _GuiCreateGrid() | _PathSplitByRegExp() | _GUICtrlListView_MoveItems - UDF | GUICtrlSetOnHover_UDF! | _ControlTab UDF! | _MouseSetOnEvent() UDF! | _ProcessListEx - UDF | GUICtrl_SetResizing - UDF! | Mod. for _IniString UDFs | _StringStripChars UDF | _ColorIsDarkShade UDF | _ColorConvertValue UDF | _GUICtrlTab_CoverBackground | CUI_App_UDF | _IncludeScripts UDF | _AutoIt3ExecuteCode | _DragList UDF | Mod. for _ListView_Progress | _ListView_SysLink | _GenerateRandomNumbers | _BlockInputEx | _IsPressedEx | OnAutoItExit Handler | _GUICtrlCreateTFLabel UDF | WinControlSetEvent UDF | Mod. for _DirGetSizeEx UDF Examples: ScreenSaver Demo - Matrix included | Gui Drag Without pause the script | _WinAttach()! | Turn Off/On Monitor | ComboBox Handler Example | Mod. for "Thinking Box" | Cool "About" Box | TasksBar Imitation Demo Like the Projects/UDFs/Examples? Please rate the topic (up-right corner of the post header: Rating ) * === My topics === * ================================================== ================================================== AutoIt is simple, subtle, elegant. © AutoIt Team
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now