Function Reference


AutoItSetOption

Changes the operation of various AutoIt functions/parameters.

AutoItSetOption ( "option" [, param] )

Parameters

option The option to change. See Remarks.
param [optional] The value to assign to the option. The type and meaning vary by option. See remarks below. If the param is not provided, then the function just returns the value already assigned to the option. The keyword Default can be used for the parameter to reset the option to its default value.

Return Value

Success: the value of the previous setting for the option.
Failure: sets the @error flag to non-zero. Failure will occur if the parameters are invalid (such as an option that does not exist).

Remarks

You may use Opt() as an alternative to AutoItSetOption().

Options are as follows:

Option Param
CaretCoordMode Sets the way coords are used in the caret functions, either absolute coords or coords relative to the current active window:
0 = relative coords to the active window
1 = (default) absolute screen coordinates
2 = relative coords to the client area of the active window
ExpandEnvStrings Changes how literal strings and % symbols are interpreted. By default strings are treated literally, this option allows you to use %environment% variables inside strings, e.g., "The temp directory is: %temp%".
0 = (default) do not expand environment variables
1 = expand environment variables
Without this option the usual way would be: "The temp directory is: " & EnvGet("temp")
ExpandVarStrings Changes how literal strings and variable/macro ($ and @) symbols are interpreted. By default strings are treated literally, this option allows you to use variables and macros inside strings, e.g., "The value of var1 is $var1$".
0 = (default) do not expand variables
1 = expand variables (when in this mode and you want to use a literal $ or @ then double it up: "This is a single dollar $$ sign".
GUICloseOnESC When ESC is pressed on a GUI the $GUI_EVENT_CLOSE message is sent. This option toggles this behavior on and off.
0 = Don't send the $GUI_EVENT_CLOSE message when ESC is pressed.
1 = (default) Send() the $GUI_EVENT_CLOSE message when ESC is pressed.
GUICoordMode Alters the position of a control defined by GUICtrlSetPos().
0 = relative position to the start of the last control (upper left corner).
1 = (default) absolute coordinates still relative to the dialog box.
2 = cell positioning relative to current cell. A -1 for left or top parameter don't increment the start.
So next line is -1, offset; next cell is offset,-1; current cell is -1,-1.
Obviously "offset" cannot be -1 which reserved to indicate the no increment. But if you can use a multiple of the width you choose to skip or go back.
GUIDataSeparatorChar Define the character which delimits subitems in GUICtrlSetData().
The default character is '|'.
GUIOnEventMode Enable/disable OnEvent functions notifications.
0 = (default) disable.
1 = enable.
GUIResizeMode Change default resizing for a control.
0 = (default) keep default control resizing.
<1024 = any type of resizing see GUICtrlSetResizing().
GUIEventOptions Change special event behavior or GUI function return values.
0 = (default) Windows behavior on click on Minimize,Restore, Maximize, Resize.
1 = suppress windows behavior on minimize, restore or maximize click button or window resize. Just sends the notification.
MouseClickDelay Alters the length of the brief pause in between mouse clicks.
Time in milliseconds to pause (default=10).
MouseClickDownDelay Alters the length a click is held down before release.
Time in milliseconds to pause (default=10).
MouseClickDragDelay Alters the length of the brief pause at the start and end of a mouse drag operation.
Time in milliseconds to pause (default=250).
MouseCoordMode Sets the way coords are used in the mouse functions, either absolute coords or coords relative to the current active window:
0 = relative coords to the active window
1 = (default) absolute screen coordinates
2 = relative coords to the client area of the active window
MustDeclareVars If this option is used then all variables must be pre-declared with Local, Global or in some cases Dim before they can be used - removes the chance for misspelled variables causing bugs.
0 = (default) Variables don't need to be pre-declared
1 = Variables must be pre-declared. See Dim / Global / Local / Const for details on declaring variables.
PixelCoordMode Sets the way coords are used in the pixel functions, either absolute coords or coords relative to the window defined by hwnd (default active window):
0 = relative coords to the defined window
1 = (default) absolute screen coordinates
2 = relative coords to the client area of the defined window
SendAttachMode Specifies if AutoIt attaches input threads when using Send() function. When not attaching (default mode=0) detecting the state of capslock/scrolllock and numlock can be unreliable under NT4. However, when you specify attach mode=1 the Send("{... down/up}") syntax will not work and there may be problems with sending keys to "hung" windows. ControlSend() ALWAYS attaches and is not affected by this mode.
0 = (default) don't attach
1 = attach
SendCapslockMode Specifies if AutoIt should store the state of capslock before a Send() function and restore it afterwards.
0 = don't store/restore
1 = (default) store and restore
SendKeyDelay Alters the length of the brief pause in between sent keystrokes. A value of 0 removes the delay completely.
Time in milliseconds to pause (default=5).
SendKeyDownDelay Alters the length of time a key is held down before being released during a keystroke. For applications that take a while to register keypresses you may need to raise this value from the default. A value of 0 removes the delay completely.
Time in milliseconds to pause (default=5).
SetExitCode Autoit exitcodes return when a Fatal error occurs.
0 = (default) don't set
1 = Set @exitCode on Fatal error - see AutoIt3 Fatal Error Exit codes
TCPTimeout Defines the time before TCP functions stop if no communication.
Time in milliseconds before timeout (default=100).
TrayAutoPause Script pauses when click on tray icon.
0 = no pause
1 = (default) pause. If there is no DefaultMenu no pause will occurs.
TrayIconDebug If enabled shows the current script line in the tray icon tip to help debugging.
0 = (default) no debug information
1 = show debug
TrayIconHide Hides the AutoIt tray icon. Note: The icon will still initially appear for ~750 milliseconds.
0 = (default) show icon
1 = hide icon
TrayMenuMode Extend the behaviour of the script tray icon/menu. This can be done with a combination (adding) of the following values.
0 = (default) default menu items (Script Paused/Exit) are appended to the usercreated menu; items will automatically be checked/unchecked when clicked; double clicking the tray icon returns the controlID of the $TRAY_DEFAULT item.
1 = no default menu
2 = items will not automatically check/uncheck when clicked
4 = do not return the $TRAY_DEFAULT item controlID when the tray icon is double clicked
8 = turn off auto check of radio item groups
TrayOnEventMode Enable/disable OnEvent functions notifications for the tray.
0 = (default) disable
1 = enable
WinDetectHiddenText Specifies if hidden window text can be "seen" by the window matching functions.
0 = (default) Do not detect hidden text
1 = Detect hidden text
WinSearchChildren Allows the window search routines to search child windows as well as top-level windows.
0 = (default) Only search top-level windows
1 = Search top-level and child windows
WinTextMatchMode Alters the method that is used to match window text during search operations.
1 = (default) Complete / Slow mode
2 = Quick mode
In quick mode AutoIt can usually only "see" dialog text, button text and the captions of some controls. In the default mode much more text can be seen (for instance the contents of the Notepad window).
If you are having performance problems when performing many window searches then changing to the "quick" mode may help.
WinTitleMatchMode Alters the method that is used to match window titles during search operations.
1 = (default) Match the title from the start
2 = Match any substring in the title
3 = Exact title match
4 = Advanced mode (retained for backwards compatibility only - see Window Titles & Text (Advanced))
-1 to -4 = Case insensitive match according to the other type of match.
WinWaitDelay Alters how long a script should briefly pause after a successful window-related operation.
Time in milliseconds to pause (default=250).

Example

; copy any you want to change   ;default value is listed first

Opt("CaretCoordMode", 1) ;1=absolute, 0=relative, 2=client
Opt("ExpandEnvStrings", 0) ;0=don't expand, 1=do expand
Opt("ExpandVarStrings", 0) ;0=don't expand, 1=do expand
Opt("GUICloseOnESC", 1) ;1=ESC  closes, 0=ESC won't close
Opt("GUICoordMode", 1) ;1=absolute, 0=relative, 2=cell
Opt("GUIDataSeparatorChar", "|") ;"|" is the default
Opt("GUIOnEventMode", 0) ;0=disabled, 1=OnEvent mode enabled
Opt("GUIResizeMode", 0) ;0=no resizing, <1024 special resizing
Opt("GUIEventOptions", 0) ;0=default, 1=just notification, 2=GUICtrlRead tab index
Opt("MouseClickDelay", 10) ;10 milliseconds
Opt("MouseClickDownDelay", 10) ;10 milliseconds
Opt("MouseClickDragDelay", 250) ;250 milliseconds
Opt("MouseCoordMode", 1) ;1=absolute, 0=relative, 2=client
Opt("MustDeclareVars", 0) ;0=no, 1=require pre-declaration
Opt("PixelCoordMode", 1) ;1=absolute, 0=relative, 2=client
Opt("SendAttachMode", 0) ;0=don't attach, 1=do attach
Opt("SendCapslockMode", 1) ;1=store and restore, 0=don't
Opt("SendKeyDelay", 5) ;5 milliseconds
Opt("SendKeyDownDelay", 1) ;1 millisecond
Opt("TCPTimeout", 100) ;100 milliseconds
Opt("TrayAutoPause", 1) ;0=no pause, 1=Pause
Opt("TrayIconDebug", 0) ;0=no info, 1=debug line info
Opt("TrayIconHide", 0) ;0=show, 1=hide tray icon
Opt("TrayMenuMode", 0) ;0=append, 1=no default menu, 2=no automatic check, 4=menuitemID  not return
Opt("TrayOnEventMode", 0) ;0=disable, 1=enable
Opt("WinDetectHiddenText", 0) ;0=don't detect, 1=do detect
Opt("WinSearchChildren", 1) ;0=no, 1=search children also
Opt("WinTextMatchMode", 1) ;1=complete, 2=quick
Opt("WinTitleMatchMode", 1) ;1=start, 2=subStr, 3=exact, 4=advanced, -1 to -4=Nocase
Opt("WinWaitDelay", 250) ;250 milliseconds