Jump to content

Problem with loop/function locking GUI


chachew
 Share

Recommended Posts

I am having a problem with a function i think. If i run this function alone it works fine but if i have a second function after this preCheck() function then my GUI locks up and i have to force close it. I have tried multiple ways to use @error or exitloop but i cant get anywhere with it. Basically my app is to automate a file installation program but i want to make sure the file and required settings are chosen before clicking the install button.

Func preCheck()
Do
If $inputDirResult="No file chosen" Then MsgBox(16,"Error","Please choose install file first")
If $checkScanTypeState="Choose Scanner Type" Then MsgBox(16,"Error","Please choose scanner type")
ExitLoop
Until Not $inputDirResult And Not $checkScanTypeState
EndFunc

What is happening is when i click on the install button in my GUI it goes:

Case $btnInstall

preCheck()

installType()

Edited by chachew
Link to comment
Share on other sites

  • Moderators

chachew,

As it stands that function could be reduced to the 2 If... lines as the Do...ExitLoop...Until lines cancel each other out. ;)

I would suggest posting the whole of your script as I see no reason why this function, even in its current form, would cause a GUI to lock up. :graduated:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Yeah originally i had on two if...then lines

I was trying random stuff, im still new to autoit. This function works perfectly when its run by itself but if my button calls this function first then another function directly after this one, thats when the lockup happens

Link to comment
Share on other sites

woops, forgot code, im sure you will cringe when you see the code...im sure its in horrible shape ;) trying to get it working then i can go back and clean it up i hope...any suggestions welcome :graduated:

#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
 
$Form1 = GUICreate("Test AutoInstaller", 297, 184, 192, 124)
$btnChoose = GUICtrlCreateButton("Choose File", 208, 72, 75, 25)
$installGroup = GUICtrlCreateGroup(" Installation File ", 8, 16, 281, 49)
$inputDir = GUICtrlCreateLabel("No file chosen", 16, 40, 270, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group1 = GUICtrlCreateGroup(" Installation Type ", 8, 80, 169, 73)
$checkPrinter = GUICtrlCreateCheckbox("Printer", 16, 128, 57, 17)
$checkWebcam = GUICtrlCreateCheckbox("Webcam", 80, 128, 65, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$comboScanner = GUICtrlCreateCombo("Choose Scanner Type", 16, 104, 145, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "None|Scanshell 800/R|Scanshell DX|CamScan")
$btnInstall = GUICtrlCreateButton("Install", 208, 112, 75, 25)
$lblDesc = GUICtrlCreateLabel("lblDesc", 8, 160, 150, 17)
$btnSelfInstall = GUICtrlCreateButton("Self Install", 216, 152, 75, 25)
$checkCalibrate = GUICtrlCreateCheckbox("Cal", 170, 159, 41, 17)
GUISetState(@SW_SHOW)
GUICtrlSetState($checkCalibrate,$GUI_DISABLE)
 
Global $varFileLocation
$AppName="AutoSetup"   ; We know the script is already running. Let the user know. Requires Misc.au3
If _Singleton($AppName, 1) = 0 Then
MsgBox(0, $AppName, "This script is already running. Using multiple copies of this script at the same time is unsupported!")
Exit
EndIf
 
If @OSVersion="WIN_7" Then $varOSVersion="Windows 7"
If @OSVersion="WIN_XP" Then $varOSVersion="Windows XP"
If @OSArch="X86" Then
$varOSArch="x86 (32bit)"
$varDialogArch="exe (*32.exe;*86.exe)"
EndIf
If @OSArch="X64" Then
$varOSArch="x64 (64bit)"
$varDialogArch="exe (*64.exe)"
EndIf
GUICtrlSetData($lblDesc, $varOSVersion & "   " & $varOSArch)
GUICtrlSetState($btnInstall,$GUI_DISABLE)
 
While 1
$checkScanTypeState=GUICtrlRead($comboScanner)
$checkPrinterState=GUICtrlRead($checkPrinter)
$checkWebcamState=GUICtrlRead($checkWebcam)
$checkCalibrateState=GUICtrlRead($checkCalibrate)
$inputDirResult=GUICtrlRead($inputDir)
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $btnChoose  ;~ Choose a setup file to install
chooseFile()
Case $btnInstall  ;~Uninstall/Reinstall setup file
preCheck()
installTypeCheck()
Case $btnSelfInstall  ;~ Test button for certain features
preCheck()
Case $comboScanner  ;~ Select the scanner type for install
If $checkScanTypeState="Choose Scanner Type" Then
GUICtrlSetState($btnInstall,$GUI_DISABLE)
GUICtrlSetState($checkCalibrate,$GUI_DISABLE)
GUICtrlSetState($checkCalibrate, $GUI_UNCHECKED)
ElseIf $checkScanTypeState="None" Then
GUICtrlSetState($btnInstall,$GUI_ENABLE)
GUICtrlSetState($checkCalibrate,$GUI_DISABLE)
GUICtrlSetState($checkCalibrate, $GUI_UNCHECKED)
ElseIf $checkScanTypeState="Scanshell 800/R" Then
GUICtrlSetState($btnInstall,$GUI_ENABLE)
GUICtrlSetState($checkCalibrate,$GUI_ENABLE)
ElseIf $checkScanTypeState="Scanshell DX" Then
GUICtrlSetState($btnInstall,$GUI_ENABLE)
GUICtrlSetState($checkCalibrate,$GUI_ENABLE)
ElseIf $checkScanTypeState="CamScan" Then
GUICtrlSetState($btnInstall,$GUI_ENABLE)
GUICtrlSetState($checkCalibrate,$GUI_DISABLE)
GUICtrlSetState($checkCalibrate, $GUI_UNCHECKED)
EndIf
EndSwitch
WEnd
 
Func preCheck()
Do
If $inputDirResult="No file chosen" Then MsgBox(16,"Error","Please choose install file first")
If $checkScanTypeState="Choose Scanner Type" Then MsgBox(16,"Error","Please choose scanner type")
ExitLoop
Until Not $inputDirResult And Not $checkScanTypeState
EndFunc
 
Func chooseFile()
$varFileLocation=FileOpenDialog("Select install file","P:\Test", $varDialogArch)
If @error Then
GUICtrlSetData($inputDir,"No file chosen")
Else
;~  GUICtrlRead($varFileLocation) ; Dont think i need to read this first..just go to next line
GUICtrlSetData($inputDir,$varFileLocation)
EndIf
EndFunc
 
Func installTypeCheck() ; Check the version of windows and then checks to see if Test installed based on registry keys
If @OSArch="X86" Then  ; If 32bit machine then run this code
If FileExists("C:\Program Files\Raptor Technologies\Test\Update.exe") Then  ; If this file exists then run the full uninstall
uninstallOld()
installSetup()
Else  ; If the file doesnt exist then proceed with install
Run($varFileLocation)
WinWait("Test Setup","")
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(1000)
installSetup()
EndIf
Else  ; If 64bit machine run this code
If FileExists("C:\Program Files (x86)\Raptor Technologies\Test\Update.exe") Then  ; If this file exists then run the full uninstall
uninstallOld()
installSetup()
Else  ; If the file doesnt exist then proceed with install
Run($varFileLocation)
WinWait("Test Setup","")
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(1000)
installSetup()
EndIf
EndIf
EndFunc
 
Func installSetup()  ;~ Install new setup based on install type
If $checkPrinterState="1" Then ControlCommand("Test Setup","",1302,"Check","")
If $checkPrinterState="4" Then ControlCommand("Test Setup","",1302,"UnCheck","")
If $checkWebcamState="1" Then ControlCommand("Test Setup","",1303,"Check","")
If $checkWebcamState="4" Then ControlCommand("Test Setup","",1303,"UnCheck","")
If $checkScanTypeState="Choose Scanner Type" Then MsgBox(16,"Error","Please choose scanner type")
If $checkScanTypeState="None" Then ControlCommand("Test Setup","",502,"SelectString",'None')
If $checkScanTypeState="Scanshell 800/R" Then ControlCommand("Test Setup","",502,"SelectString",'ScanShell 800/R')
If $checkScanTypeState="Scanshell DX" Then ControlCommand("Test Setup","",502,"SelectString",'ScanShell 800DX')
If $checkScanTypeState="CamScan" Then ControlCommand("Test Setup","",502,"SelectString",'CamScan (SnapShell IDR)')
;~  Sleep(500)
;~  ControlClick("Test Setup","",100)
;~  Sleep(500)
;~  ControlClick("Test Setup","",100)
;~  Sleep(500)
;~  ControlClick("Test Setup","",100)
;~  Sleep(500)
;~  ControlClick("Test Setup","",100)
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;~~ NONE
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If $checkScanTypeState="None" Then
Sleep(500)
ControlClick("Test Setup","&Next >","[CLASSNN:Button1]")
Sleep(500)
ControlClick("Test Setup","&Next >","[CLASSNN:Button1]")
Sleep(500)
ControlClick("Test Setup","&Next >","[CLASSNN:Button1]")
Sleep(500)
WinWait("Test Setup","&Finish")
ControlClick("Test Setup","&Finish","[CLASSNN:Button1]")
Sleep(1000)
MsgBox(16,"Install Progress","Install finished, test out the system inside of Test now.")
EndIf
;~~~end
 
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;~~ SCANSHELL 800/R
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;  stuff goes here
;~~~end
 
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;~~ SCANSHELL DX
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
If $checkScanTypeState="Scanshell DX" Then
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
Sleep(500)
ControlClick("Test Setup","",100)
WinWait("Windows Security","")
Sleep(500)
ControlClick("Windows Security","","[CLASSNN:Button1]")
WinWait("Test Setup","&Next >")
Sleep(500)
ControlClick("Test Setup","&Next >","[CLASSNN:Button1]")
WinWait("Scanner Utilities","")
While ProcessExists("ScannerUtilities.exe")
Sleep(500)
WEnd
WinWait("Test Setup","")
ControlClick("Test Setup","",100)
Sleep(1000)
MsgBox(16,"Install Progress","Install finished, test out the system inside of Test now.")
EndIf
;~~~end
 
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;~~ CamScan
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;  stuff goes here
;~~~end
 
EndFunc
 
Func uninstallOld()  ;~ Uninstall any old installs with the default uninstall settings
Run($varFileLocation)
WinWait("Test Setup","")
Sleep(500)
ControlClick("Test Setup","",100)
WinWait("Test Setup","Drivers License Library")
Sleep(500)
ControlClick("Test Setup","",100)
WinWait("Windows Installer","")
Sleep(50)
WinWait("Test Uninstaller","")
ControlClick("Test Uninstaller","",100)
Sleep(500)
WinWait("Test Uninstaller","&Finish")
ControlClick("Test Uninstaller","",100)
Sleep(50)
WinWait("Test Setup","Logitech QuickCam")
Sleep(2500)
EndFunc
Link to comment
Share on other sites

  • Moderators

chachew,

I would imagine you are getting stuck on one of the WinWait lines in uninstallOld or installSetup. Add this line:

Opt("TrayIconDebug", 1)

to the top of your script. Then you will see the currently executing line when you put the mouse over the tray icon. I bet you will find a WinWait line displayed! ;)

I have looked at the script and did not cringe at all! ;)

I do have one or two suggestions for the earlier sections though - look for the <<<<<<<<<<< lines: :)

#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
#Include <GuiComboBox.au3>
 
Global $varFileLocation
 
$AppName = "AutoSetup" ; Do this here - why create a GUI for nothing? <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
If _Singleton($AppName, 1) = 0 Then
    MsgBox(0, $AppName, "This script is already running. Using multiple copies of this script at the same time is unsupported!")
    Exit
EndIf
 
$Form1 = GUICreate("Test AutoInstaller", 297, 184, 192, 124)
$btnChoose = GUICtrlCreateButton("Choose File", 208, 72, 75, 25)
$installGroup = GUICtrlCreateGroup(" Installation File ", 8, 16, 281, 49)
$inputDir = GUICtrlCreateLabel("No file chosen", 16, 40, 270, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group1 = GUICtrlCreateGroup(" Installation Type ", 8, 80, 169, 73)
$checkPrinter = GUICtrlCreateCheckbox("Printer", 16, 128, 57, 17)
$checkWebcam = GUICtrlCreateCheckbox("Webcam", 80, 128, 65, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$comboScanner = GUICtrlCreateCombo("", 16, 104, 145, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "None|Scanshell 800/R|Scanshell DX|CamScan")
_GUICtrlComboBox_SetEditText($comboScanner, "Choose Scanner Type") ; Now it is not one of the selections <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
$btnInstall = GUICtrlCreateButton("Install", 208, 112, 75, 25)
GUICtrlSetState($btnInstall, $GUI_DISABLE)
$lblDesc = GUICtrlCreateLabel("lblDesc", 8, 160, 150, 17)
$btnSelfInstall = GUICtrlCreateButton("Self Install", 216, 152, 75, 25)
$checkCalibrate = GUICtrlCreateCheckbox("Cal", 170, 159, 41, 17)
GUISetState(@SW_SHOW)
GUICtrlSetState($checkCalibrate, $GUI_DISABLE)
 
If @OSVersion = "WIN_7" Then $varOSVersion = "Windows 7"
If @OSVersion = "WIN_VISTA" Then $varOSVersion = "Windows Vista"
If @OSVersion = "WIN_XP" Then $varOSVersion = "Windows XP"
 
If @OSArch = "X86" Then
    $varOSArch = "x86 (32bit)"
    $varDialogArch = "exe (*.exe)"
EndIf
If @OSArch = "X64" Then
    $varOSArch = "x64 (64bit)"
    $varDialogArch = "exe (*.exe)"
EndIf
GUICtrlSetData($lblDesc, $varOSVersion & "   " & $varOSArch)
 
While 1
    $checkScanTypeState = GUICtrlRead($comboScanner)
    $checkPrinterState = GUICtrlRead($checkPrinter)
    $checkWebcamState = GUICtrlRead($checkWebcam)
    $checkCalibrateState = GUICtrlRead($checkCalibrate)
    $inputDirResult = GUICtrlRead($inputDir)
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $btnChoose ;~ Choose a setup file to install
            chooseFile()
        Case $btnInstall ;~Uninstall/Reinstall setup file
            If preCheck() Then   ; We only run teh next function if precheck returns True <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                installTypeCheck()
            EndIf
        Case $btnSelfInstall ;~ Test button for certain features
            preCheck()
        Case $comboScanner ;~ Select the scanner type for install
            If $checkScanTypeState = "Choose Scanner Type" Then
                GUICtrlSetState($btnInstall, $GUI_DISABLE)
                GUICtrlSetState($checkCalibrate, $GUI_DISABLE)
                GUICtrlSetState($checkCalibrate, $GUI_UNCHECKED)
            ElseIf $checkScanTypeState = "None" Then
                GUICtrlSetState($btnInstall, $GUI_ENABLE)
                GUICtrlSetState($checkCalibrate, $GUI_DISABLE)
                GUICtrlSetState($checkCalibrate, $GUI_UNCHECKED)
            ElseIf $checkScanTypeState = "Scanshell 800/R" Then
                GUICtrlSetState($btnInstall, $GUI_ENABLE)
                GUICtrlSetState($checkCalibrate, $GUI_ENABLE)
            ElseIf $checkScanTypeState = "Scanshell DX" Then
                GUICtrlSetState($btnInstall, $GUI_ENABLE)
                GUICtrlSetState($checkCalibrate, $GUI_ENABLE)
            ElseIf $checkScanTypeState = "CamScan" Then
                GUICtrlSetState($btnInstall, $GUI_ENABLE)
                GUICtrlSetState($checkCalibrate, $GUI_DISABLE)
                GUICtrlSetState($checkCalibrate, $GUI_UNCHECKED)
            EndIf
    EndSwitch
WEnd
 
Func preCheck()
 
    If $inputDirResult = "No file chosen" Then
        MsgBox(16, "Error", "Please choose install file first")
        Return False ; So we will not continue
    EndIf
    ; You only enable the button if the combo has been used so why check again <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    Return True ; So we will continue
 
EndFunc   ;==>preCheck

Let me know the result of the TrayIconDebug test. :graduated:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Oh..sweet, that Opt file is awesome!!! YES, you nailed it im stuck at line 222 (WinWait)..

So how can i force the the app to wait until preCheck() has NO msgbox's to display or that both of those requirements are met?

Thanks for the 2 suggestions too, should i move this

$AppName="AutoSetup"   ; We know the script is already running. Let the user know. Requires Misc.au3
If _Singleton($AppName, 1) = 0 Then
MsgBox(0, $AppName, "This script is already running. Using multiple copies of this script at the same time is unsupported!")
Exit
EndIf

above the GUI create part so that the GUI is not set to @SW_SHOW before executing this part of the code?

EDIT:: wait..i see you other additions to the code..sorry

Edited by chachew
Link to comment
Share on other sites

  • Moderators

chachew,

im stuck at line 222 (WinWait)..

Nice to see the remote debugging skills are still sharp! ;)

So how can i force the the app to wait until preCheck() has NO msgbox's to display or that both of those requirements are met?

The code I posted above does just that. ;)

If preCheck() Then  
    installTypeCheck()
EndIf

Will only run installTypeCheck if preCheck returns True.

So we arrange preCheck to return True if all is well and False if not:

If $inputDirResult = "No file chosen" Then                         ; Has a file been chosen
    MsgBox(16, "Error", "Please choose install file first")        ; Tell the user to do so if not
    Return False                                                   ; Then the condition above is NOT true and we do not run installTypeCheck
EndIf
Return True                                                        ; The condition is true and so we do run installTypeCheck

There is no need to check the combo as you only enable the button if the combo has been actioned and a selection made - why check again as you cannot get to this check unless the button has been enabled. :)

Is that clearer? :graduated:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

  • Moderators

chachew,

My pleasure. :graduated:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

  • Moderators

chachew,

Do you have a Help file? What does the page for _GUICtrlComboBox_SetEditText show in the syntax box for this function above the actual function line? :graduated:

This is a function beginning with an _underscore, so you will need to include the relevant UDF to get it to work. So just as I did in the code I posted above (go and take a look ;)) you will need to add:

#Include <GuiComboBox.au3>

at the top of your script. :)

M23

Edit: As your post has now gone I assume you have found that out for yourself! ;)

Edited by Melba23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...