Allow2010 Posted April 17, 2015 Share Posted April 17, 2015 (edited) Hello, normally i use the titlebar to drag a window to the position i want it. But this time i need a window without titlebar, and i was wondering if there is a way to drag it (left click and hold and then move the mouse) by the window itself. Anyone has an idea how this can be made possible? Edited April 17, 2015 by Allow2010 Link to comment Share on other sites More sharing options...
jguinch Posted April 17, 2015 Share Posted April 17, 2015 You can use a label or pic and use the $GUI_WS_EX_PARENTDRAG extended style. #include <WindowsConstants.au3> #Include <GUIConstantsEx.au3> GUICreate("gui", 400, 400, -1, -1, $WS_POPUPWINDOW) GUICtrlCreateLabel("", 0, 0, 400, 15, -1, $GUI_WS_EX_PARENTDRAG) GUICtrlSetBkColor(-1, 0x000055) GUISetState() While 1 $msg = GUIGetMsg() If $msg = -3 Then ExitLoop WEnd Spoiler Network configuration UDF, _DirGetSizeByExtension, _UninstallList Firefox ConfigurationArray multi-dimensions, Printer Management UDF Link to comment Share on other sites More sharing options...
mikell Posted April 17, 2015 Share Posted April 17, 2015 (edited) An other way : drag the gui using its background (keeping the controls active) #include <WindowsConstants.au3> $gui = GUICreate("gui", 200, 200, -1, -1, $WS_POPUPWINDOW) GUICtrlCreateButton("button", 20, 20, 60, 25) GUISetState() GUIRegisterMsg($WM_NCHITTEST, "WM_NCHITTEST") While 1 Sleep(10) WEnd Func WM_NCHITTEST($hWnd, $iMsg, $iwParam, $ilParam) if $hWnd = $gui and $iMsg = $WM_NCHITTEST then Return $HTCAPTION EndFunc Edit Obviously to close the gui you will need something like a close button Edited April 17, 2015 by mikell Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 17, 2015 Moderators Share Posted April 17, 2015 Allow2010,The Moving and Resizing PopUp GUIs tutorial in the Wiki will explain several ways to do this - two of which have already been suggested. M23 NassauSky 1 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Exit Posted April 17, 2015 Share Posted April 17, 2015 (left click and hold and then move the mouse) Anyone has an idea how this can be made possible? Show window menu ==> Alt+Space Select second menu entry (in German it is Verschieben, should be move in English) Then: left click and hold and then move the mouse Release mouse key when in desired position Hope this helps App: Au3toCmd UDF: _SingleScript() Link to comment Share on other sites More sharing options...
Allow2010 Posted April 18, 2015 Author Share Posted April 18, 2015 (edited) Allow2010, The Moving and Resizing PopUp GUIs tutorial in the Wiki will explain several ways to do this - two of which have already been suggested. M23 Thanks, your link is helpful (as always:-) But i tried the first resize script and it keeps crashing on me...any idea why? The only thing that i can imagine ist my multi monitor setup (3 Monitors) >Running:(3.3.12.0):C:Program Files (x86)AutoIt3autoit3.exe "C:UsersuserDesktoptest.au3" --> Press Ctrl+Alt+Break to Restart or Ctrl+Break to Stop "C:UsersuserDesktoptest.au3" (66) : ==> Subscript used on non-accessible variable.: If $aCurInfo[0] < $iMargin Then $iSide = 1 If $aCurInfo^ ERROR the script works for some seconds but crashes after a while.. Same problem with the second move/resize script... Edit: tried on a machine with just 1 Monitor, same result, both scripts crash after a few seconds...same error.. Edited April 18, 2015 by Allow2010 Link to comment Share on other sites More sharing options...
guinness Posted April 18, 2015 Share Posted April 18, 2015 (edited) It's not crashing, you're just not checking if the array is inbounds. A custom title bar is really bad UX design. It adds unfamiliarity to the end user who is more familiar with the standard Windows design. Edited April 18, 2015 by guinness UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 18, 2015 Moderators Share Posted April 18, 2015 Allow2010,The error occurs because the GUIGetCursorInfo function is failing because the mouse is very slightly outside the popup when you try to drag/resize it. Add the following line to the _GetBorder function and that should fix it:Func _GetBorder() Local $aCurInfo = GUIGetCursorInfo() If @error Then Return -1 ; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<I will amend the Wiki code - thanks for noticing. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Allow2010 Posted April 18, 2015 Author Share Posted April 18, 2015 thanks... and while you are at it: With a normal window, the resize arrows show even when the window is not active... With the example i have to activate the gui (click it) for the resize arrows to show when i hover over the borders... Can this be fixed too? Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 18, 2015 Moderators Share Posted April 18, 2015 (edited) Allow2010,I doubt it, but I will take a look.M23 Edited April 18, 2015 by Melba23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Allow2010 Posted April 18, 2015 Author Share Posted April 18, 2015 thanks for trying... Link to comment Share on other sites More sharing options...
mikell Posted April 18, 2015 Share Posted April 18, 2015 expandcollapse popup#include <GuiConstantsEx.au3> #include <Windowsconstants.au3> #include <SendMessage.au3> HotKeySet("{ESC}", "On_Exit") ; Set distance from edge of window where resizing is possible Global Const $iMargin = 4 ; Set max and min GUI sizes Global Const $iGUIMinX = 50, $iGUIMinY = 50, $iGUIMaxX = 300, $iGUIMaxY = 300 Global $tPoint = DllStructCreate("struct; long X;long Y; endstruct") ; Create GUI $hGUI = GUICreate("Y", 100, 100, -1, -1, $WS_POPUP) GUISetBkColor(0x00FF00) GUISetState() ; Register message handlers GUIRegisterMsg($WM_LBUTTONDOWN, "_WM_LBUTTONDOWN") ; For resize/drag GUIRegisterMsg($WM_MOUSEMOVE, "_SetCursor") ; For cursor type change GUIRegisterMsg($WM_GETMINMAXINFO, "_WM_GETMINMAXINFO") ; For GUI size limits While 1 Sleep(10) WEnd ; Check cursor type and resize/drag window as required Func _WM_LBUTTONDOWN($hWnd, $iMsg, $wParam, $lParam) Local $iCursorType = _GetBorder() If $iCursorType > 0 Then ; Cursor is set to resizing style $iResizeType = 0xF000 + $iCursorType _SendMessage($hGUI, $WM_SYSCOMMAND, $iResizeType, 0) Else Local $aCurInfo = GUIGetCursorInfo($hGUI) If $aCurInfo[4] = 0 Then ; Mouse not over a control DllCall("user32.dll", "int", "ReleaseCapture") _SendMessage($hGUI, $WM_NCLBUTTONDOWN, $HTCAPTION, 0) EndIf EndIf EndFunc ;==>WM_LBUTTONDOWN ; Set cursor to correct resizing form if mouse is over a border Func _SetCursor() If not WinActive($hGUI) Then DllStructSetData($tPoint, "x", MouseGetPos(0)) DllStructSetData($tPoint, "y", MouseGetPos(1)) Local $aResult = DllCall("user32.dll", "hwnd", "WindowFromPoint", "struct", $tPoint) If $aResult[0] = $hGUI Then WinActivate($hGUI) Else Local $iCursorID Switch _GetBorder() Case 0 $iCursorID = 2 Case 1, 2 $iCursorID = 13 Case 3, 6 $iCursorID = 11 Case 5, 7 $iCursorID = 10 Case 4, 8 $iCursorID = 12 EndSwitch GUISetCursor($iCursorID, 1) EndIf EndFunc ;==>SetCursor ; Determines if mouse cursor over a border Func _GetBorder() Local $aCurInfo = GUIGetCursorInfo() If @error Then Return -1 Local $aWinPos = WinGetPos($hGUI) Local $iSide = 0 Local $iTopBot = 0 If $aCurInfo[0] < $iMargin Then $iSide = 1 If $aCurInfo[0] > $aWinPos[2] - $iMargin Then $iSide = 2 If $aCurInfo[1] < $iMargin Then $iTopBot = 3 If $aCurInfo[1] > $aWinPos[3] - $iMargin Then $iTopBot = 6 Return $iSide + $iTopBot EndFunc ;==>_GetBorder ; Set min and max GUI sizes Func _WM_GETMINMAXINFO($hWnd, $iMsg, $wParam, $lParam) $tMinMaxInfo = DllStructCreate("int;int;int;int;int;int;int;int;int;int", $lParam) DllStructSetData($tMinMaxInfo, 7, $iGUIMinX) DllStructSetData($tMinMaxInfo, 8, $iGUIMinY) DllStructSetData($tMinMaxInfo, 9, $iGUIMaxX) DllStructSetData($tMinMaxInfo, 10, $iGUIMaxY) Return 0 EndFunc ;==>_WM_GETMINMAXINFO Func On_Exit() Exit EndFunc Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 18, 2015 Moderators Share Posted April 18, 2015 mikell,Nice try - but that is cheating!M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
mikell Posted April 18, 2015 Share Posted April 18, 2015 (edited) Cheating ? why ? Usually as soon as you resize a window it becomes activated, so it's just a little anticipation And any other way would make the script much slower with possible flicker or jerks BTW these new smileys are abominable Edited April 18, 2015 by mikell Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 18, 2015 Moderators Share Posted April 18, 2015 mikell,Because the request was for the arrows to appear even when the popup was not active - so deliberately activating it seems a little outside the brief.And I quite agree about the emoticons - retina capable they might be, but pretty they are not.M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
mikell Posted April 18, 2015 Share Posted April 18, 2015 (edited) Melba, resizing any window makes it automatically active The problem here is how to detect the window borders when it is inactive, and of course you can avoid my 'cheating' - but I tried several other ways and noted that they all made the script slower (particularly for the cursor type update) Edit Is not a poll possible concerning the smileys ? Edited April 18, 2015 by mikell Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 18, 2015 Moderators Share Posted April 18, 2015 mikell,I agree that actually resizing the window makes it active, but if you test with 2 resizeable windows, the arrows appear whenever the cursor is over the border regardless of whether that window is active or inactive - there is no need to activate the window to see the arrows. That is what the OP wanted and why I said your solution was cheating - although very clever.M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Solution mikell Posted April 18, 2015 Solution Share Posted April 18, 2015 OK I understand What about this one ? expandcollapse popup#include <GuiConstantsEx.au3> #include <Windowsconstants.au3> #include <SendMessage.au3> HotKeySet("{ESC}", "On_Exit") ; Set distance from edge of window where resizing is possible Global Const $iMargin = 4 ; Set max and min GUI sizes Global Const $iGUIMinX = 50, $iGUIMinY = 50, $iGUIMaxX = 300, $iGUIMaxY = 300 Global $tPoint = DllStructCreate("struct; long X;long Y; endstruct") ; Create GUI $hGUI = GUICreate("Y", 100, 100, -1, -1, $WS_POPUP) GUISetBkColor(0x00FF00) GUISetState() ; Register message handlers GUIRegisterMsg($WM_LBUTTONDOWN, "_WM_LBUTTONDOWN") ; For resize/drag GUIRegisterMsg($WM_MOUSEMOVE, "_SetCursor") ; For cursor type change GUIRegisterMsg($WM_GETMINMAXINFO, "_WM_GETMINMAXINFO") ; For GUI size limits While 1 Sleep(10) WEnd ; Check cursor type and resize/drag window as required Func _WM_LBUTTONDOWN($hWnd, $iMsg, $wParam, $lParam) Local $iCursorType = _GetBorder() If $iCursorType > 0 Then ; Cursor is set to resizing style $iResizeType = 0xF000 + $iCursorType _SendMessage($hGUI, $WM_SYSCOMMAND, $iResizeType, 0) Else Local $aCurInfo = GUIGetCursorInfo($hGUI) If $aCurInfo[4] = 0 Then ; Mouse not over a control DllCall("user32.dll", "int", "ReleaseCapture") _SendMessage($hGUI, $WM_NCLBUTTONDOWN, $HTCAPTION, 0) EndIf EndIf EndFunc ;==>WM_LBUTTONDOWN ; Set cursor to correct resizing form if mouse is over a border Func _SetCursor() DllStructSetData($tPoint, "x", MouseGetPos(0)) DllStructSetData($tPoint, "y", MouseGetPos(1)) Local $aResult = DllCall("user32.dll", "hwnd", "WindowFromPoint", "struct", $tPoint) If $aResult[0] <> $hGUI Then Return Local $iCursorID Switch _GetBorder() Case 0 $iCursorID = 2 ; arrow Case 1, 2 $iCursorID = 13 ; SIZEWE Case 3, 6 $iCursorID = 11 ; SIZENS Case 5, 7 $iCursorID = 10 ; SIZENESW Case 4, 8 $iCursorID = 12 ; SIZENWSE EndSwitch GUISetCursor($iCursorID, 1) EndFunc ;==>SetCursor ; Determines if mouse cursor over a border Func _GetBorder() Local $aMPos = MouseGetPos() Local $aWinPos = WinGetPos($hGUI) Local $iSide = 0 Local $iTopBot = 0 If $aMPos[0] < $aWinPos[0] + $iMargin Then $iSide = 1 If $aMPos[0] > $aWinPos[0] + $aWinPos[2] - $iMargin Then $iSide = 2 If $aMPos[1] < $aWinPos[1] + $iMargin Then $iTopBot = 3 If $aMPos[1] > $aWinPos[1] + $aWinPos[3] - $iMargin Then $iTopBot = 6 Return $iSide + $iTopBot EndFunc ;==>_GetBorder ; Set min and max GUI sizes Func _WM_GETMINMAXINFO($hWnd, $iMsg, $wParam, $lParam) $tMinMaxInfo = DllStructCreate("int;int;int;int;int;int;int;int;int;int", $lParam) DllStructSetData($tMinMaxInfo, 7, $iGUIMinX) DllStructSetData($tMinMaxInfo, 8, $iGUIMinY) DllStructSetData($tMinMaxInfo, 9, $iGUIMaxX) DllStructSetData($tMinMaxInfo, 10, $iGUIMaxY) Return 0 EndFunc ;==>_WM_GETMINMAXINFO Func On_Exit() Exit EndFunc Gianni and NassauSky 2 Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 18, 2015 Moderators Share Posted April 18, 2015 mikell,Very nice!M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Allow2010 Posted April 18, 2015 Author Share Posted April 18, 2015 (edited) @mikell you did not add the If @error Then Return -1 line mentioned above...is it needed here? Your script did not yet crash when i tried it...so maybe you fixed it in a different way? As i see you solved it different, but there is stilla line Local $aCurInfo = GUIGetCursorInfo() wich might cause trouble?! Better add error checking here? Edited April 18, 2015 by Allow2010 Link to comment Share on other sites More sharing options...
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