<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.autoitscript.com/w/index.php?action=history&amp;feed=atom&amp;title=Snippets_%28_Graphics_%29</id>
	<title>Snippets ( Graphics ) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.autoitscript.com/w/index.php?action=history&amp;feed=atom&amp;title=Snippets_%28_Graphics_%29"/>
	<link rel="alternate" type="text/html" href="https://www.autoitscript.com/w/index.php?title=Snippets_(_Graphics_)&amp;action=history"/>
	<updated>2026-05-06T06:49:31Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://www.autoitscript.com/w/index.php?title=Snippets_(_Graphics_)&amp;diff=11243&amp;oldid=prev</id>
		<title>IEvKI3gv9Wrkd41u: +Snippets Category (+ normalize top)</title>
		<link rel="alternate" type="text/html" href="https://www.autoitscript.com/w/index.php?title=Snippets_(_Graphics_)&amp;diff=11243&amp;oldid=prev"/>
		<updated>2012-11-12T15:10:15Z</updated>

		<summary type="html">&lt;p&gt;+Snippets Category (+ normalize top)&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:10, 12 November 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div class=&quot;center&quot; style=&quot;width&lt;/del&gt;:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;auto; margin-left:auto; margin-right:auto;&quot;&amp;gt;&#039;&#039;&#039;Please always credit an author in your script if you use their code, Its only polite.&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;__TOC__&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[category&lt;/ins&gt;:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Snippets]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Snippet Credit Header}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; Animated Gif ~ Author - [http://www.autoitscript.com/forum/user/1967-garyfrost/ GaryFrost] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; Animated Gif ~ Author - [http://www.autoitscript.com/forum/user/1967-garyfrost/ GaryFrost] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>IEvKI3gv9Wrkd41u</name></author>
	</entry>
	<entry>
		<id>https://www.autoitscript.com/w/index.php?title=Snippets_(_Graphics_)&amp;diff=10808&amp;oldid=prev</id>
		<title>Chimaera: /*  Custom GUI Cursor ~ Author - Saunders  */</title>
		<link rel="alternate" type="text/html" href="https://www.autoitscript.com/w/index.php?title=Snippets_(_Graphics_)&amp;diff=10808&amp;oldid=prev"/>
		<updated>2012-08-03T07:04:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Custom GUI Cursor ~ Author - Saunders&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;div class=&amp;quot;center&amp;quot; style=&amp;quot;width:auto; margin-left:auto; margin-right:auto;&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;Please always credit an author in your script if you use their code, Its only polite.&amp;#039;&amp;#039;&amp;#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; Animated Gif ~ Author - [http://www.autoitscript.com/forum/user/1967-garyfrost/ GaryFrost] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Animated Gif&lt;br /&gt;
&lt;br /&gt;
Opt(&amp;quot;MustDeclareVars&amp;quot;, 1)&lt;br /&gt;
#include &amp;lt;IE.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
_Main()&lt;br /&gt;
&lt;br /&gt;
Func _Main()&lt;br /&gt;
    Local $pheight = 50, $pwidth = 50, $oIE, $GUIActiveX, $gif&lt;br /&gt;
    $gif = FileOpenDialog(&amp;quot;Select Animated Gif&amp;quot;, @ScriptDir, &amp;quot;gif files (*.gif)&amp;quot;, 3)&lt;br /&gt;
    If @error Then Exit&lt;br /&gt;
    _GetGifPixWidth_Height($gif, $pwidth, $pheight)&lt;br /&gt;
    $oIE = ObjCreate(&amp;quot;Shell.Explorer.2&amp;quot;)&lt;br /&gt;
    GUICreate(&amp;quot;Embedded Web control Test&amp;quot;, 640, 580)&lt;br /&gt;
    $GUIActiveX = GUICtrlCreateObj($oIE, 0, 0, $pwidth, $pheight)&lt;br /&gt;
    $oIE.navigate (&amp;quot;about:blank&amp;quot;)&lt;br /&gt;
    While _IEPropertyGet($oIE, &amp;quot;busy&amp;quot;)&lt;br /&gt;
        Sleep(100)&lt;br /&gt;
    WEnd&lt;br /&gt;
    $oIE.document.body.background = $gif&lt;br /&gt;
    $oIE.document.body.scroll = &amp;quot;no&amp;quot;&lt;br /&gt;
    GUISetState()&lt;br /&gt;
    While GUIGetMsg() &amp;lt;&amp;gt; -3&lt;br /&gt;
    WEnd&lt;br /&gt;
EndFunc   ;==&amp;gt;_Main&lt;br /&gt;
&lt;br /&gt;
Func _GetGifPixWidth_Height($s_gif, ByRef $pwidth, ByRef $pheight)&lt;br /&gt;
    If FileGetSize($s_gif) &amp;gt; 9 Then&lt;br /&gt;
        Local $sizes = FileRead($s_gif, 10)&lt;br /&gt;
        ConsoleWrite(&amp;quot;Gif version: &amp;quot; &amp;amp; StringMid($sizes, 1, 6) &amp;amp; @LF)&lt;br /&gt;
        $pwidth = Asc(StringMid($sizes, 8, 1)) * 256 + Asc(StringMid($sizes, 7, 1))&lt;br /&gt;
        $pheight = Asc(StringMid($sizes, 10, 1)) * 256 + Asc(StringMid($sizes, 9, 1))&lt;br /&gt;
        ConsoleWrite($pwidth &amp;amp; &amp;quot; x &amp;quot; &amp;amp; $pheight &amp;amp; @LF)&lt;br /&gt;
    EndIf&lt;br /&gt;
EndFunc   ;==&amp;gt;_GetGifPixWidth_Height&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[#top|Return To Contents]]&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _AreIconsEqual() ~ Author - [http://www.autoitscript.com/forum/user/52374-johnone/ JohnOne] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
;#### Example ####&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;Constants.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;get handles to two icons&lt;br /&gt;
;Change the numbers 3 or load an icon from another source&lt;br /&gt;
Local $sModule = @SystemDir &amp;amp; &amp;quot;\shell32.dll&amp;quot;&lt;br /&gt;
Local $hModule = _WinAPI_GetModuleHandle($sModule)&lt;br /&gt;
Local $hmyIcon1 = _WinAPI_LoadImage($hModule, 3, $IMAGE_ICON, 0, 0, 0)&lt;br /&gt;
Local $hmyIcon2 = _WinAPI_LoadImage($hModule, 3, $IMAGE_ICON, 0, 0, 0)&lt;br /&gt;
&lt;br /&gt;
Local $bEqual = _AreIconsEqual($hmyIcon1, $hmyIcon2)&lt;br /&gt;
If @error Then&lt;br /&gt;
   Exit MsgBox(0, &amp;quot;Error&amp;quot;, @error)&lt;br /&gt;
EndIf&lt;br /&gt;
MsgBox(0, &amp;quot;Icons Equal&amp;quot;, $bEqual)&lt;br /&gt;
&lt;br /&gt;
;Checks if two Icons are the same.&lt;br /&gt;
Func _AreIconsEqual($hicon1, $hicon2)&lt;br /&gt;
   Local $aRtn = DllCall(&amp;quot;shlwapi.dll&amp;quot;, &amp;quot;BOOL&amp;quot;, 548, &amp;quot;handle&amp;quot;, $hicon1, &amp;quot;handle&amp;quot;, $hicon2)&lt;br /&gt;
   If @error Then&lt;br /&gt;
     Return SetError(@error)&lt;br /&gt;
   EndIf&lt;br /&gt;
   Return $aRtn[0]&lt;br /&gt;
EndFunc   ;==&amp;gt;_AreIconsEqual&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[#top|Return To Contents]]&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; Array Of Pixel Colours ~ Author - [http://www.autoitscript.com/forum/user/31256-malkey/ Malkey] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
;=========================================================&lt;br /&gt;
; Produces an array of pixel colours used in an image that are below the colour 0x202020 (array[n][0]),&lt;br /&gt;
; Number of times that colour is used (array[n][1]), and,&lt;br /&gt;
; the percentage of the numer of times the colour is used over the total number of pixels in the image (array[n][2]).&lt;br /&gt;
; Array[0][0] contains the number of unique pixels used in the image below 0x202020 colour.&lt;br /&gt;
; Array[0][1] contains the total number of pixels used in the image below 0x202020 colour.&lt;br /&gt;
; Array[0][2] contains the percentage of the total number of pixels used in the image below 0x202020 colour.&lt;br /&gt;
;============================================================&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;ScreenCapture.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;GDIPlus.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;Array.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dim $pixels, $iTotalReplace&lt;br /&gt;
Local $Path = FileOpenDialog(&amp;quot;Choose Image File&amp;quot;, @ScriptDir &amp;amp; &amp;quot;&amp;quot;, &amp;quot;Images (*.gif;*.png;*.jpg;*.bmp)| All (*.*)&amp;quot;)&lt;br /&gt;
If $Path &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    _GDIPlus_Startup()&lt;br /&gt;
&lt;br /&gt;
    $hImage = _GDIPlus_ImageLoadFromFile($Path)&lt;br /&gt;
    $width = _GDIPlus_ImageGetWidth($hImage)&lt;br /&gt;
    $height = _GDIPlus_ImageGetHeight($hImage)&lt;br /&gt;
    $hBmp = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)&lt;br /&gt;
&lt;br /&gt;
    $aSize = DllCall(&amp;#039;gdi32.dll&amp;#039;, &amp;#039;int&amp;#039;, &amp;#039;GetBitmapBits&amp;#039;, &amp;#039;ptr&amp;#039;, $hBmp, &amp;#039;int&amp;#039;, 0, &amp;#039;ptr&amp;#039;, 0)&lt;br /&gt;
    If $aSize[0] Then&lt;br /&gt;
        $tBits = DllStructCreate(&amp;#039;byte[&amp;#039; &amp;amp; $aSize[0] &amp;amp; &amp;#039;]&amp;#039;)&lt;br /&gt;
        DllCall(&amp;#039;gdi32.dll&amp;#039;, &amp;#039;int&amp;#039;, &amp;#039;GetBitmapBits&amp;#039;, &amp;#039;ptr&amp;#039;, $hBmp, &amp;#039;int&amp;#039;, $aSize[0], &amp;#039;ptr&amp;#039;, DllStructGetPtr($tBits))&lt;br /&gt;
        $sHex = Hex(DllStructGetData($tBits, 1))&lt;br /&gt;
&lt;br /&gt;
        ; Selects all pixels below/less than 0x202020&lt;br /&gt;
        $pixels = StringRegExp($sHex, &amp;quot;([01][0-9A-F][01][0-9A-F][01][0-9A-F])FF&amp;quot;, 3)&lt;br /&gt;
        &lt;br /&gt;
        ; Selects all pixels below/less than 0x505050 (Can take a while)&lt;br /&gt;
        ;$pixels = StringRegExp($sHex, &amp;quot;([0-5][0-9A-F][0-5][0-9A-F][0-5][0-9A-F])FF&amp;quot;, 3)&lt;br /&gt;
        &lt;br /&gt;
        $sHexReduced = _ArrayToString($pixels) &amp;amp; &amp;quot;|&amp;quot;&lt;br /&gt;
&lt;br /&gt;
        Dim $pixels[1][3]&lt;br /&gt;
        While StringLen($sHexReduced) &amp;gt; 6&lt;br /&gt;
            ReDim $pixels[UBound($pixels) + 1][3]&lt;br /&gt;
            $PixTemp = StringLeft($sHexReduced, 7)&lt;br /&gt;
            $sHexReduced = StringReplace($sHexReduced, $PixTemp, &amp;quot;&amp;quot;, 0)&lt;br /&gt;
            $numreplacements = @extended&lt;br /&gt;
&lt;br /&gt;
            $pixels[UBound($pixels) - 1][1] = $numreplacements&lt;br /&gt;
            $pixels[UBound($pixels) - 1][0] = StringTrimRight($PixTemp, 1)&lt;br /&gt;
            $pixels[UBound($pixels) - 1][2] = StringFormat(&amp;quot;%1.4f%%&amp;quot;, $numreplacements * 100 / ($height * $width))&lt;br /&gt;
            $iTotalReplace += $numreplacements&lt;br /&gt;
&lt;br /&gt;
        WEnd&lt;br /&gt;
        $pixels[0][0] = UBound($pixels) - 1&lt;br /&gt;
        $pixels[0][1] = $iTotalReplace&lt;br /&gt;
        $pixels[0][2] = StringFormat(&amp;quot;%1.4f%%&amp;quot;, $iTotalReplace * 100 / ($height * $width))&lt;br /&gt;
    EndIf&lt;br /&gt;
    _ArraySort($pixels, 0, 1, 0, 0)&lt;br /&gt;
    _ArrayDisplay($pixels,$Path)&lt;br /&gt;
    _WinAPI_DeleteObject($hBmp)&lt;br /&gt;
    _GDIPlus_ImageDispose($hImage)&lt;br /&gt;
    _GDIPlus_Shutdown()&lt;br /&gt;
EndIf&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _CalcContrastColour() ~ Author - [http://www.autoitscript.com/forum/user/38576-melba23/ Melba23] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;GUIConstantsEx.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$hGUI = GUICreate(&amp;quot;Test&amp;quot;, 500, 500)&lt;br /&gt;
$cLabel = GUICtrlCreateLabel(&amp;quot;&amp;quot;, 100, 100, 300, 300)&lt;br /&gt;
$cButton = GUICtrlCreateButton(&amp;quot;Change&amp;quot;, 10, 450, 80, 30)&lt;br /&gt;
GUISetState()&lt;br /&gt;
&lt;br /&gt;
While 1&lt;br /&gt;
    Switch GUIGetMsg()&lt;br /&gt;
        Case $GUI_EVENT_CLOSE&lt;br /&gt;
            Exit&lt;br /&gt;
        Case $cButton&lt;br /&gt;
            $iColour = Random(0, 0xFFFFFF, 1)&lt;br /&gt;
            GUISetBkColor($iColour)&lt;br /&gt;
            $iContrast_Colour = _CalcContrastColour($iColour)&lt;br /&gt;
            GUICtrlSetBkColor($cLabel, $iContrast_Colour)&lt;br /&gt;
    EndSwitch&lt;br /&gt;
WEnd&lt;br /&gt;
&lt;br /&gt;
Func _CalcContrastColour($iColour, $iTolerance = 30)&lt;br /&gt;
    Switch $iTolerance&lt;br /&gt;
        Case 0 To 255&lt;br /&gt;
            $iTolerance = Int($iTolerance)&lt;br /&gt;
        Case Else&lt;br /&gt;
            $iTolerance = 30&lt;br /&gt;
    EndSwitch&lt;br /&gt;
&lt;br /&gt;
    If (Abs(BitAND($iColour, 0xFF) - 0x80) &amp;lt;= $iTolerance And _&lt;br /&gt;
        Abs(BitAND(BitShift($iColour, 8), 0xFF) - 0x80) &amp;lt;= $iTolerance And _&lt;br /&gt;
        Abs(BitAND(BitShift($iColour, 16), 0xFF) - 0x80) &amp;lt;= $iTolerance) _&lt;br /&gt;
        Then Return BitAND((0x7F7F7F + $iColour), 0xFFFFFF)&lt;br /&gt;
&lt;br /&gt;
    Return BitXOR($iColour, 0xFFFFFF)&lt;br /&gt;
EndFunc   ;==&amp;gt;_CalcContrastColour&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; Custom GUI Cursor ~ Author - Saunders &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Custom GUI Cursor, Mouse over second gui to view.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GuiConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;GUIConstantsEx.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WindowsConstants.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Local $Gui = GuiCreate(&amp;quot;Test&amp;quot;, 300, 200)&lt;br /&gt;
GUISetState()&lt;br /&gt;
&lt;br /&gt;
Local $Gui2 = GuiCreate(&amp;quot;Test&amp;quot;, 300, 200,750)&lt;br /&gt;
GUISetState()&lt;br /&gt;
&lt;br /&gt;
GUIRegisterMsg($WM_SETCURSOR, &amp;#039;WM_SETCURSOR&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
Local $Cur = DllCall(&amp;quot;user32.dll&amp;quot;, &amp;quot;int&amp;quot;, &amp;quot;LoadCursorFromFile&amp;quot;, &amp;quot;str&amp;quot;,&amp;quot;C:\windows\cursors\pen_m.cur&amp;quot;)&lt;br /&gt;
if @error Then MsgBox(0,&amp;quot;dd&amp;quot;,&amp;quot;whoopsie!&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
While 1&lt;br /&gt;
    Local $Msg = GUIGetMsg(1)&lt;br /&gt;
    Select&lt;br /&gt;
        Case $Msg[0] = $GUI_EVENT_CLOSE&lt;br /&gt;
            Exit&lt;br /&gt;
    EndSelect&lt;br /&gt;
WEnd&lt;br /&gt;
&lt;br /&gt;
Func WM_SETCURSOR($hWnd, $iMsg, $iWParam, $iLParam)&lt;br /&gt;
    If $hWnd = $Gui Then&lt;br /&gt;
        DllCall(&amp;quot;user32.dll&amp;quot;, &amp;quot;int&amp;quot;, &amp;quot;SetCursor&amp;quot;, &amp;quot;int&amp;quot;, $Cur[0])&lt;br /&gt;
        Return 0&lt;br /&gt;
    EndIf&lt;br /&gt;
EndFunc&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _GUICtrlSetImageEx() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;GDIPlus.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;GUIConstantsEx.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
_GDIPlus_Startup()&lt;br /&gt;
Example()&lt;br /&gt;
_GDIPlus_Shutdown()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
    _GUICtrlSetImageEx(@ScriptDir &amp;amp; &amp;quot;Example.png&amp;quot;, 5, 5)&lt;br /&gt;
&lt;br /&gt;
    GUISetState(@SW_SHOW)&lt;br /&gt;
&lt;br /&gt;
    While 1&lt;br /&gt;
        Switch GUIGetMsg()&lt;br /&gt;
            Case $GUI_EVENT_CLOSE&lt;br /&gt;
                ExitLoop&lt;br /&gt;
        EndSwitch&lt;br /&gt;
    WEnd&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
; Version: 1.00. AutoIt: V3.3.8.1&lt;br /&gt;
; Create an image control and set an image file to the control, works with png too.&lt;br /&gt;
Func _GUICtrlSetImageEx($sImageFile, $iLeft, $iTop)&lt;br /&gt;
    Local Const $STM_SETIMAGE = 0x0172&lt;br /&gt;
    Local $hImage = _GDIPlus_ImageLoadFromFile($sImageFile)&lt;br /&gt;
    Local $iWidth = _GDIPlus_ImageGetWidth($hImage)&lt;br /&gt;
    Local $iHeight = _GDIPlus_ImageGetHeight($hImage)&lt;br /&gt;
    Local $hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)&lt;br /&gt;
    _GDIPlus_ImageDispose($hImage)&lt;br /&gt;
&lt;br /&gt;
    Local $iControlID = GUICtrlCreatePic(&amp;#039;&amp;#039;, $iLeft, $iTop, $iWidth, $iHeight)&lt;br /&gt;
    _WinAPI_DeleteObject(GUICtrlSendMsg($iControlID, $STM_SETIMAGE, 0, $hBitmap))&lt;br /&gt;
    _WinAPI_DeleteObject($hBitmap)&lt;br /&gt;
    Return $iControlID&lt;br /&gt;
EndFunc   ;==&amp;gt;_GUICtrlSetImageEx&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[#top|Return To Contents]]&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _IconButton() ~ Author - [http://www.autoitscript.com/forum/user/31965-progandy/ ProgAndy] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
;===============================================================================&lt;br /&gt;
;&lt;br /&gt;
; Function Name:   _IconButton()&lt;br /&gt;
; Description::    Creates a button with Icon and Text&lt;br /&gt;
; Parameter(s):    $text - text&lt;br /&gt;
;                  $dll - Icon FileName&lt;br /&gt;
;                  $iconID - ID of icon in File&lt;br /&gt;
;                  $x - top&lt;br /&gt;
;                  $y - left&lt;br /&gt;
;                  $w - width, is min. 40&lt;br /&gt;
;                  $h - height, is min. 55&lt;br /&gt;
; Requirement(s):  AutoIT :P &lt;br /&gt;
; Return Value(s): ControlID of the button, to cnage the Icon use the functions below :) &lt;br /&gt;
; Author(s):       Prog@ndy&lt;br /&gt;
;&lt;br /&gt;
;===============================================================================&lt;br /&gt;
;&lt;br /&gt;
Func _IconButton($text,$dll,$iconID,$x,$y,$w = 50,$h = 60)&lt;br /&gt;
    Local $space, $spaceh = 9&lt;br /&gt;
    If $w &amp;lt; 40 Then $w = 40&lt;br /&gt;
    Local $space = Floor(($w-32)/2)&lt;br /&gt;
    If $h &amp;lt; 55 Then $h = 55&lt;br /&gt;
    If $h &amp;lt; 60 Then $spaceh = 5&lt;br /&gt;
    GUICtrlCreateIcon($dll, $iconID, $x+$space, $y+$spaceh, 32, 32,0) ; --&amp;gt; die letzte 0, damit kein Klick-Ereignis ausgelöst wird (Click-Through)&lt;br /&gt;
    Return GUICtrlCreateButton($text, $x, $y, $w, $h, BitOR($WS_CLIPSIBLINGS, $BS_BOTTOM, $BS_MULTILINE))&lt;br /&gt;
EndFunc&lt;br /&gt;
&lt;br /&gt;
; by Prog@ndy&lt;br /&gt;
Func _IconButtonSetIco($btn,$dll, $iconID=0)&lt;br /&gt;
    GUICtrlSetImage($btn-1,$dll, $iconID)&lt;br /&gt;
EndFunc&lt;br /&gt;
; by Prog@ndy&lt;br /&gt;
Func _IconButtonDelete($btn)&lt;br /&gt;
    GUICtrlDelete($btn-1)&lt;br /&gt;
    GUICtrlDelete($btn)&lt;br /&gt;
EndFunc&lt;br /&gt;
; by Prog@ndy&lt;br /&gt;
Func _IconButtonIconSetStyle($btn,$style,$styleEx)&lt;br /&gt;
    GUICtrlSetStyle($btn-1,$style,$styleEx)&lt;br /&gt;
EndFunc&lt;br /&gt;
&lt;br /&gt;
; Gets The Control ID of the Icon, so you can use all GUICtrl... Functions on it :) &lt;br /&gt;
; by Prog@ndy&lt;br /&gt;
Func _IconButtonIconGetCtrlID($btn)&lt;br /&gt;
    Return $btn-1&lt;br /&gt;
EndFunc&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _IconOnButton() ~ Author - [http://www.autoitscript.com/forum/user/4920-valuater/ Valuater] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Icon on Button - (made easy)&lt;br /&gt;
#include &amp;lt;GUIConstantsEx.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WindowsConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;GUIConstants.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Global $mywin = GUICreate(&amp;quot;my gui&amp;quot;)&lt;br /&gt;
Local $btn1 = _IconOnButton(&amp;quot; Help&amp;quot;, 30, 30, 70, 32, 23)&lt;br /&gt;
GUISetState()&lt;br /&gt;
&lt;br /&gt;
While 1&lt;br /&gt;
    Local $msg = GUIGetMsg()&lt;br /&gt;
    If $msg = $btn1 Then MsgBox(0,0,&amp;quot;You pressed the Icon Button  &amp;quot;, 2)&lt;br /&gt;
    If $msg = $GUI_EVENT_CLOSE Then Exit&lt;br /&gt;
WEnd&lt;br /&gt;
&lt;br /&gt;
Func _IconOnButton($BItext, $BIleft, $BItop, $BIwidth, $BIheight, $BIconNum, $BIDLL = &amp;quot;shell32.dll&amp;quot;)&lt;br /&gt;
    GUICtrlCreateIcon($BIDLL, $BIconNum, $BIleft + 5, $BItop + (($BIheight - 16) / 2), 16, 16)&lt;br /&gt;
    GUICtrlSetState( -1, $GUI_DISABLE)&lt;br /&gt;
    Local $XS_btnx = GUICtrlCreateButton($BItext, $BIleft, $BItop, $BIwidth, $BIheight, $WS_CLIPSIBLINGS)&lt;br /&gt;
    Return $XS_btnx&lt;br /&gt;
EndFunc ;==&amp;gt;_IconOnButton()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _ImageSize() ~ Author - [http://www.autoitscript.com/forum/user/44525-jscript/ JScript] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
;Author: JScript - Snippet Version No. = 1.0&lt;br /&gt;
;Snippet was Created Using AutoIt Version = 3.3.8.1, Creation Date = 23/05/12.&lt;br /&gt;
&lt;br /&gt;
Local $sImage = FileOpenDialog(&amp;quot;choose an image file to measure...&amp;quot;, @DocumentsCommonDir, &amp;quot;Images (*.jpg;*.bmp;*.gif;*.png)&amp;quot;, 1)&lt;br /&gt;
Local $aiSize = _ImageSize($sImage)&lt;br /&gt;
&lt;br /&gt;
MsgBox(4096, &amp;quot;ImageSize&amp;quot;, &amp;quot;Image: &amp;quot; &amp;amp; $sImage &amp;amp; @CRLF &amp;amp; @CRLF &amp;amp; &amp;quot;Width: &amp;quot; &amp;amp; $aiSize[0] &amp;amp; @CRLF &amp;amp; &amp;quot;Height: &amp;quot; &amp;amp; $aiSize[1])&lt;br /&gt;
&lt;br /&gt;
Func _ImageSize($ImgFullPath)&lt;br /&gt;
    Local $hWnd, $hGuiSwitch, $aCtrlSize, $aRetSize[2] = [0, 0]&lt;br /&gt;
&lt;br /&gt;
    $hWnd = GUICreate($ImgFullPath, 0, 0, 0, 0, BitOR(0x80000000, 0x20000000), BitOR(0x00000080, 0x00000020))&lt;br /&gt;
    $hGuiSwitch = GUISwitch($hWnd)&lt;br /&gt;
    $aCtrlSize = ControlGetPos($hWnd, &amp;quot;&amp;quot;, GUICtrlCreatePic($ImgFullPath, 0, 0, 0, 0))&lt;br /&gt;
    GUIDelete($hWnd)&lt;br /&gt;
    GUISwitch($hGuiSwitch)&lt;br /&gt;
&lt;br /&gt;
    If IsArray($aCtrlSize) Then&lt;br /&gt;
        $aRetSize[0] = $aCtrlSize[2]; Width&lt;br /&gt;
        $aRetSize[1] = $aCtrlSize[3]; Height&lt;br /&gt;
        Return SetError(0, 0, $aRetSize)&lt;br /&gt;
    EndIf&lt;br /&gt;
    Return SetError(1, 0, $aRetSize)&lt;br /&gt;
EndFunc   ;==&amp;gt;_ImageSize&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[#top|Return To Contents]]&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _IsCheckbox() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a Checkbox control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;ButtonConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;Constants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateRadio(&amp;#039;&amp;#039;, 0, 0, 500, 500) ; This is considered a &amp;#039;Button&amp;#039; by _WinAPI_GetClassName too.&lt;br /&gt;
    Local $iCheckbox = GUICtrlCreateCheckbox(&amp;#039;&amp;#039;, 0, 0, 100, 20)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Radio ID: &amp;#039; &amp;amp; _IsCheckbox($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Radio Handle: &amp;#039; &amp;amp; _IsCheckbox(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Checkbox ID: &amp;#039; &amp;amp; _IsCheckbox($iCheckbox) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Checkbox Handle: &amp;#039; &amp;amp; _IsCheckbox(GUICtrlGetHandle($iCheckbox)) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsCheckbox($hWnd)&lt;br /&gt;
    If IsHWnd($hWnd) = 0 Then&lt;br /&gt;
        $hWnd = GUICtrlGetHandle($hWnd)&lt;br /&gt;
    EndIf&lt;br /&gt;
    If _WinAPI_GetClassName($hWnd) = &amp;#039;Button&amp;#039; Then&lt;br /&gt;
        Local $iLong = _WinAPI_GetWindowLong($hWnd, $GWL_STYLE)&lt;br /&gt;
        Return (BitAND($iLong, $BS_CHECKBOX) = $BS_CHECKBOX Or BitAND($iLong, $BS_AUTOCHECKBOX) = $BS_AUTOCHECKBOX)&lt;br /&gt;
    EndIf&lt;br /&gt;
    Return False&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsCheckbox&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;  _IsComboBox() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a ComboBox control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GUIComboBox.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateLabel(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $iComboBox = GUICtrlCreateCombo(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $hComboBox = _GUICtrlComboBox_Create($hGUI, &amp;#039;Example&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Label ID: &amp;#039; &amp;amp; _IsComboBox($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Label Handle: &amp;#039; &amp;amp; _IsComboBox(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt ComboBox ID: &amp;#039; &amp;amp; _IsComboBox($iComboBox) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt ComboBox Handle: &amp;#039; &amp;amp; _IsComboBox(GUICtrlGetHandle($iComboBox)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;ComboBox UDF Handle: &amp;#039; &amp;amp; _IsComboBox($hComboBox) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    _GUICtrlComboBox_Destroy($hComboBox)&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsComboBox($hWnd)&lt;br /&gt;
    Return _WinAPI_GetClassName($hWnd) = &amp;#039;ComboBox&amp;#039;&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsComboBox&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;  _IsListBox() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a ListBox control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GUIListBox.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateLabel(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $iListBox = GUICtrlCreateList(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $hListBox = _GUICtrlListBox_Create($hGUI, &amp;#039;Example&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Label ID: &amp;#039; &amp;amp; _IsListBox($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Label Handle: &amp;#039; &amp;amp; _IsListBox(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt ListBox ID: &amp;#039; &amp;amp; _IsListBox($iListBox) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt ListBox Handle: &amp;#039; &amp;amp; _IsListBox(GUICtrlGetHandle($iListBox)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;ListBox UDF Handle: &amp;#039; &amp;amp; _IsListBox($hListBox) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    _GUICtrlListBox_Destroy($hListBox)&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsListBox($hWnd)&lt;br /&gt;
    Return _WinAPI_GetClassName($hWnd) = &amp;#039;ListBox&amp;#039;&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsListBox&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _IsListView() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a ListView control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GUIListView.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateLabel(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $iListView = GUICtrlCreateListView(0, 0, 500, 500)&lt;br /&gt;
    Local $hListView = _GUICtrlListView_Create($hGUI, &amp;#039;Example&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Label ID: &amp;#039; &amp;amp; _IsListView($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Label Handle: &amp;#039; &amp;amp; _IsListView(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt ListView ID: &amp;#039; &amp;amp; _IsListView($iListView) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt ListView Handle: &amp;#039; &amp;amp; _IsListView(GUICtrlGetHandle($iListView)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;ListView UDF Handle: &amp;#039; &amp;amp; _IsListView($hListView) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    _GUICtrlListView_Destroy($hListView)&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsListView($hWnd)&lt;br /&gt;
    Return _WinAPI_GetClassName($hWnd) = &amp;#039;SysListView32&amp;#039;&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsListView&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;  _IsProgress() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing aProgress control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateLabel(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $iProgress = GUICtrlCreateProgress(0, 0, 500, 20)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Label ID: &amp;#039; &amp;amp; _IsProgress($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Label Handle: &amp;#039; &amp;amp; _IsProgress(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Progress ID: &amp;#039; &amp;amp; _IsProgress($iProgress) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Progress Handle: &amp;#039; &amp;amp; _IsProgress(GUICtrlGetHandle($iProgress)) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsProgress($hWnd)&lt;br /&gt;
    Return _WinAPI_GetClassName($hWnd) = &amp;#039;msctls_progress32&amp;#039;&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsProgress&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;  _IsRadio() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a Radio control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;ButtonConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;Constants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateCheckbox(&amp;#039;&amp;#039;, 0, 0, 500, 500) ; This is considered a &amp;#039;Button&amp;#039; by _WinAPI_GetClassName too.&lt;br /&gt;
    Local $iRadio = GUICtrlCreateRadio(&amp;#039;&amp;#039;, 0, 0, 100, 20)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Checkbox ID: &amp;#039; &amp;amp; _IsRadio($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Checkbox Handle: &amp;#039; &amp;amp; _IsRadio(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Radio ID: &amp;#039; &amp;amp; _IsRadio($iRadio) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Radio Handle: &amp;#039; &amp;amp; _IsRadio(GUICtrlGetHandle($iRadio)) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsRadio($hWnd)&lt;br /&gt;
    If IsHWnd($hWnd) = 0 Then&lt;br /&gt;
        $hWnd = GUICtrlGetHandle($hWnd)&lt;br /&gt;
    EndIf&lt;br /&gt;
    If _WinAPI_GetClassName($hWnd) = &amp;#039;Button&amp;#039; Then&lt;br /&gt;
        Local $iLong = _WinAPI_GetWindowLong($hWnd, $GWL_STYLE)&lt;br /&gt;
        Return (BitAND($iLong, $BS_RADIOBUTTON) = $BS_RADIOBUTTON Or BitAND($iLong, $BS_AUTORADIOBUTTON) = $BS_AUTORADIOBUTTON)&lt;br /&gt;
    EndIf&lt;br /&gt;
    Return False&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsRadio&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;  _IsSlider() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a Slider control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateLabel(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $iSlider = GUICtrlCreateSlider(0, 0, 500, 20)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Label ID: &amp;#039; &amp;amp; _IsSlider($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Label Handle: &amp;#039; &amp;amp; _IsSlider(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Slider ID: &amp;#039; &amp;amp; _IsSlider($iSlider) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Slider Handle: &amp;#039; &amp;amp; _IsSlider(GUICtrlGetHandle($iSlider)) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsSlider($hWnd)&lt;br /&gt;
    Return _WinAPI_GetClassName($hWnd) = &amp;#039;msctls_trackbar32&amp;#039;&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsSlider&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;  _IsTab() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a Tab control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GUITab.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateLabel(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $iTab = GUICtrlCreateTab(0, 0, 500, 500)&lt;br /&gt;
    Local $hTab = _GUICtrlTab_Create($hGUI, 0, 0, 500, 500)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Label ID: &amp;#039; &amp;amp; _IsTab($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Label Handle: &amp;#039; &amp;amp; _IsTab(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Tab ID: &amp;#039; &amp;amp; _IsTab($iTab) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Tab Handle: &amp;#039; &amp;amp; _IsTab(GUICtrlGetHandle($iTab)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;Tab UDF Handle: &amp;#039; &amp;amp; _IsTab($hTab) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    _GUICtrlTab_Destroy($hTab)&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
Func _IsTab($hWnd)&lt;br /&gt;
    Return _WinAPI_GetClassName($hWnd) = &amp;#039;SysTabControl32&amp;#039;&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsTab&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _IsTreeView() ~ Author - [http://www.autoitscript.com/forum/user/35302-guinness/ guinness] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Check if a variable is referencing a TreeView control.&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GUITreeView.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
Example()&lt;br /&gt;
&lt;br /&gt;
Func Example()&lt;br /&gt;
    Local $hGUI = GUICreate(&amp;#039;&amp;#039;)&lt;br /&gt;
    Local $iLabel = GUICtrlCreateLabel(&amp;#039;&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    Local $iTreeView = GUICtrlCreateTreeView(0, 0, 500, 500)&lt;br /&gt;
    Local $hTreeView = _GUICtrlTreeView_Create($hGUI, &amp;#039;Example&amp;#039;, 0, 0, 500, 500)&lt;br /&gt;
    GUISetState(@SW_SHOW, $hGUI)&lt;br /&gt;
&lt;br /&gt;
    MsgBox(4096, &amp;#039;&amp;#039;, &amp;#039;AutoIt Label ID: &amp;#039; &amp;amp; _IsTreeView($iLabel) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt Label Handle: &amp;#039; &amp;amp; _IsTreeView(GUICtrlGetHandle($iLabel)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt TreeView ID: &amp;#039; &amp;amp; _IsTreeView($iTreeView) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;AutoIt TreeView Handle: &amp;#039; &amp;amp; _IsTreeView(GUICtrlGetHandle($iTreeView)) &amp;amp; @CRLF &amp;amp; _&lt;br /&gt;
            &amp;#039;TreeView UDF Handle: &amp;#039; &amp;amp; _IsTreeView($hTreeView) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
    _GUICtrlTreeView_Destroy($hTreeView)&lt;br /&gt;
    Return GUIDelete($hGUI)&lt;br /&gt;
EndFunc   ;==&amp;gt;Example&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Func _IsTreeView($hWnd)&lt;br /&gt;
    Return _WinAPI_GetClassName($hWnd) = &amp;#039;SysTreeView32&amp;#039;&lt;br /&gt;
EndFunc   ;==&amp;gt;_IsTreeView&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; Move Entire Screen Across ~ Author - [http://www.autoitscript.com/forum/user/23675-siao/ Siao] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;WindowsConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$hScreenDC = _WinAPI_GetWindowDC(0)&lt;br /&gt;
$hMemDC = _WinAPI_CreateCompatibleDC($hScreenDC)&lt;br /&gt;
$hMemBMP = _WinAPI_CreateCompatibleBitmap($hScreenDC, @DesktopWidth*2, @DesktopHeight)&lt;br /&gt;
_WinAPI_DeleteObject(_WinAPI_SelectObject($hMemDC, $hMemBMP))&lt;br /&gt;
_WinAPI_BitBlt($hMemDC, 0, 0, @DesktopWidth, @DesktopHeight, $hScreenDC, 0, 0, $SRCCOPY)&lt;br /&gt;
_WinAPI_BitBlt($hMemDC, @DesktopWidth, 0, @DesktopWidth, @DesktopHeight, $hScreenDC, 0, 0, $SRCCOPY)&lt;br /&gt;
&lt;br /&gt;
For $i = @DesktopWidth To 0 Step -8&lt;br /&gt;
    _WinAPI_BitBlt($hScreenDC, 0, 0, @DesktopWidth, @DesktopHeight, $hMemDC, $i, 0, $SRCCOPY)&lt;br /&gt;
    Sleep(20)&lt;br /&gt;
Next&lt;br /&gt;
&lt;br /&gt;
_WinAPI_RedrawWindow(_WinAPI_GetDesktopWindow(), 0, 0, $RDW_INVALIDATE+$RDW_ALLCHILDREN)&lt;br /&gt;
_WinAPI_ReleaseDC(0, $hScreenDC)&lt;br /&gt;
_WinAPI_DeleteObject($hMemBMP)&lt;br /&gt;
_WinAPI_DeleteDC($hMemDC)&lt;br /&gt;
&lt;br /&gt;
Exit&lt;br /&gt;
&lt;br /&gt;
; Edited - for up/down move - Malkey&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;WindowsConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WinAPI.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$hScreenDC = _WinAPI_GetWindowDC(0)&lt;br /&gt;
$hMemDC = _WinAPI_CreateCompatibleDC($hScreenDC)&lt;br /&gt;
$hMemBMP = _WinAPI_CreateCompatibleBitmap($hScreenDC, @DesktopWidth, @DesktopHeight*2)&lt;br /&gt;
_WinAPI_DeleteObject(_WinAPI_SelectObject($hMemDC, $hMemBMP))&lt;br /&gt;
_WinAPI_BitBlt($hMemDC, 0, 0, @DesktopWidth, @DesktopHeight, $hScreenDC, 0, 0, $SRCCOPY)&lt;br /&gt;
_WinAPI_BitBlt($hMemDC, 0, @DesktopHeight,  @DesktopWidth, @DesktopHeight, $hScreenDC, 0, 0, $SRCCOPY)&lt;br /&gt;
&lt;br /&gt;
For $i = 0 To @DesktopHeight  Step 8 ;scroll Up&lt;br /&gt;
;For $i =  @DesktopHeight To 0 Step -8 ;scroll Down&lt;br /&gt;
    _WinAPI_BitBlt($hScreenDC, 0, 0, @DesktopWidth, @DesktopHeight, $hMemDC, 0, $i, $SRCCOPY)&lt;br /&gt;
    Sleep(20)&lt;br /&gt;
Next&lt;br /&gt;
&lt;br /&gt;
_WinAPI_RedrawWindow(_WinAPI_GetDesktopWindow(), 0, 0, $RDW_INVALIDATE+$RDW_ALLCHILDREN)&lt;br /&gt;
_WinAPI_ReleaseDC(0, $hScreenDC)&lt;br /&gt;
_WinAPI_DeleteObject($hMemBMP)&lt;br /&gt;
_WinAPI_DeleteDC($hMemDC)&lt;br /&gt;
&lt;br /&gt;
Exit&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; Multi-Color Changing Background ~ Author - [http://www.autoitscript.com/forum/user/23930-monoceres/ monoceres] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Multi-Color Changing Background&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GUIConstantsEx.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dim $color, $redm = 1, $bluem = 2, $greenm = 3, $index&lt;br /&gt;
&lt;br /&gt;
GUICreate(&amp;quot;test&amp;quot;)&lt;br /&gt;
GUISetState()&lt;br /&gt;
&lt;br /&gt;
While GUIGetMsg() &amp;lt;&amp;gt; -3&lt;br /&gt;
    Sleep(10)&lt;br /&gt;
    $index += 0.01&lt;br /&gt;
    $color = &amp;quot;0x&amp;quot; &amp;amp; Hex(255 * ((Sin($index * $redm) + 1) / 2), 2) &amp;amp; Hex(255 * ((Sin($index * $greenm) + 1) / 2), 2) &amp;amp; Hex(255 * ((Sin($index * $bluem) + 1) / 2), 2)&lt;br /&gt;
    GUISetBkColor($color)&lt;br /&gt;
WEnd&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _SetPNGIntoPicControl() ~ Author - [http://www.autoitscript.com/forum/user/62653-monoscout999/ monoscout999] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;GDIPlus.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;Constants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;GuiConstantsEx.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WindowsConstants.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Global Const $SC_MOVE = 0xF010&lt;br /&gt;
Global Const $STM_SETIMAGE = 0x172&lt;br /&gt;
&lt;br /&gt;
; This Is For Getting The PNG From a URL&lt;br /&gt;
$PngFile = @ScriptDir &amp;amp; &amp;quot;\MyPNG.png&amp;quot;&lt;br /&gt;
$Inet = InetGet(&amp;quot;http://img26.imageshack.us/img26/7439/boton3p.png&amp;quot;, $PngFile)&lt;br /&gt;
&lt;br /&gt;
;Here is the GUI creation&lt;br /&gt;
$hGUI = GUICreate(&amp;quot;PNG Pic by monoscout999&amp;quot;)&lt;br /&gt;
GUISetBkColor(0x123456, $hGUI)&lt;br /&gt;
$Pic = GUICtrlCreatePic(&amp;quot;&amp;quot;, 10, 10, 50, 50)&lt;br /&gt;
_SetPNGIntoPicControl($Pic, $PngFile)&lt;br /&gt;
GUISetState()&lt;br /&gt;
&lt;br /&gt;
While True&lt;br /&gt;
	$msg = GUIGetMsg()&lt;br /&gt;
	Switch $msg&lt;br /&gt;
		Case -3&lt;br /&gt;
			Exit&lt;br /&gt;
		Case $GUI_EVENT_PRIMARYDOWN&lt;br /&gt;
			_ControlMove($Pic)&lt;br /&gt;
	EndSwitch&lt;br /&gt;
WEnd&lt;br /&gt;
&lt;br /&gt;
; Here is the function declared&lt;br /&gt;
Func _SetPNGIntoPicControl($iPic, $sPNGFile)&lt;br /&gt;
	_GDIPlus_Startup()&lt;br /&gt;
	Local $hImage = _GDIPlus_ImageLoadFromFile($sPNGFile)&lt;br /&gt;
	Local $hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)&lt;br /&gt;
	_WinAPI_DeleteObject(GUICtrlSendMsg($iPic, $STM_SETIMAGE, $IMAGE_BITMAP, $hBitmap))&lt;br /&gt;
	_WinAPI_DeleteObject($hBitmap)&lt;br /&gt;
	_GDIPlus_ImageDispose($hImage)&lt;br /&gt;
	_GDIPlus_Shutdown()&lt;br /&gt;
EndFunc   ;==&amp;gt;_SetPNGIntoPicControl&lt;br /&gt;
&lt;br /&gt;
Func _ControlMove($cID)&lt;br /&gt;
	Local $aCurPos = GUIGetCursorInfo()&lt;br /&gt;
	If @error Then Return False&lt;br /&gt;
	If $aCurPos[4] = $cID Then&lt;br /&gt;
		GUICtrlSendMsg($cID, $WM_SYSCOMMAND, BitOR($SC_MOVE, $HTCAPTION), 0)&lt;br /&gt;
	EndIf&lt;br /&gt;
EndFunc   ;==&amp;gt;_ControlMove&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _SwitchColor() ~ Author - [http://www.autoitscript.com/forum/user/10807-razerm/ RazerM] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; Switch BGR to RGB and vice versa&lt;br /&gt;
&lt;br /&gt;
ConsoleWrite(0xFF0000 = SwitchColor(0x0000FF) &amp;amp; @CRLF)&lt;br /&gt;
&lt;br /&gt;
Func _SwitchColor($iColor)&lt;br /&gt;
    Local $iMask&lt;br /&gt;
    $iMask = BitXOR(BitAND($iColor, 0xFF) , ($iColor / 0x10000))&lt;br /&gt;
    Return BitXOR($iColor, ($iMask * 0x10001))&lt;br /&gt;
EndFunc   ;==&amp;gt;_SwitchColor()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;blockquote style=&amp;quot;background-color:white; padding:1em; border:2px solid #8FBC8F&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; _XPStyle() ~ Authors - [http://www.autoitscript.com/forum/user/4920-valuater/ Valuater] ~ [http://www.autoitscript.com/forum/user/1967-garyfrost/ GaryFrost] &amp;#039;&amp;#039;&amp;#039;&amp;lt;/blockquote&amp;gt; =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
; XP Style For Colours&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;GuiConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;GUIConstantsEx.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;StaticConstants.au3&amp;gt;&lt;br /&gt;
#include &amp;lt;WindowsConstants.au3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Global $XS_n, $x = 0&lt;br /&gt;
Global $gui = GuiCreate(&amp;quot;MyGUI&amp;quot;, 350, 42,-1, -1 , BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS))&lt;br /&gt;
 _XPStyle(1)&lt;br /&gt;
Local $Pic_1 = GUICtrlCreateLabel(&amp;quot;&amp;quot;, 10, 10, 340, 20)&lt;br /&gt;
GUICtrlSetBkColor($Pic_1,0xff0000) ;Red&lt;br /&gt;
Local $Label_2 = GuiCtrlCreateLabel(&amp;quot;&amp;quot;, 10, 10, 340, 20)&lt;br /&gt;
Local $Label_3 = GUICtrlCreateLabel(&amp;quot;&amp;quot;, 10, 13, 5, 15, $SS_CENTER)&lt;br /&gt;
GUICtrlSetBkColor( -1, $GUI_BKCOLOR_TRANSPARENT )&lt;br /&gt;
 _XPStyle(0)&lt;br /&gt;
&lt;br /&gt;
GuiSetState()&lt;br /&gt;
do&lt;br /&gt;
    Local $msg = GuiGetMsg()&lt;br /&gt;
    if $msg = $GUI_EVENT_CLOSE then ExitLoop&lt;br /&gt;
    Local $pos = ControlGetPos($gui,&amp;quot;&amp;quot;,$Label_2)&lt;br /&gt;
    if $pos[0] &amp;lt; 340 then&lt;br /&gt;
        GUICtrlSetPos($Label_2,$pos[0]+((360/100)*1),10)&lt;br /&gt;
        GUICtrlSetPos($Label_3, 10, 13, $pos[0]+((360/100)*1),15)&lt;br /&gt;
        GUICtrlSetData( $Label_3, int($pos[0]+((360/100)*1)) &amp;amp; &amp;quot;%&amp;quot;)&lt;br /&gt;
    EndIf&lt;br /&gt;
    Sleep(20)&lt;br /&gt;
    if $x = 0 then&lt;br /&gt;
        if $pos[0] &amp;gt; 339.9 then&lt;br /&gt;
            MsgBox(0,&amp;quot;test&amp;quot;,&amp;quot;Done!&amp;quot;)&lt;br /&gt;
            $x = 1&lt;br /&gt;
        EndIf&lt;br /&gt;
    EndIf&lt;br /&gt;
    $msg = GuiGetMsg()&lt;br /&gt;
    if $msg = $GUI_EVENT_CLOSE then Exit&lt;br /&gt;
until $msg = $GUI_EVENT_CLOSE&lt;br /&gt;
&lt;br /&gt;
 Func _XPStyle($OnOff = 1)&lt;br /&gt;
    If $OnOff And StringInStr(@OSTYPE, &amp;quot;WIN32_NT&amp;quot;) Then&lt;br /&gt;
        $XS_n = DllCall(&amp;quot;uxtheme.dll&amp;quot;, &amp;quot;int&amp;quot;, &amp;quot;GetThemeAppProperties&amp;quot;)&lt;br /&gt;
        DllCall(&amp;quot;uxtheme.dll&amp;quot;, &amp;quot;none&amp;quot;, &amp;quot;SetThemeAppProperties&amp;quot;, &amp;quot;int&amp;quot;, 0)&lt;br /&gt;
        Return 1&lt;br /&gt;
    ElseIf StringInStr(@OSTYPE, &amp;quot;WIN32_NT&amp;quot;) And IsArray($XS_n) Then&lt;br /&gt;
        DllCall(&amp;quot;uxtheme.dll&amp;quot;, &amp;quot;none&amp;quot;, &amp;quot;SetThemeAppProperties&amp;quot;, &amp;quot;int&amp;quot;, $XS_n[0])&lt;br /&gt;
        $XS_n = &amp;quot;&amp;quot;&lt;br /&gt;
        Return 1&lt;br /&gt;
    EndIf&lt;br /&gt;
    Return 0&lt;br /&gt;
EndFunc   ;==&amp;gt;_XPStyle&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Chimaera</name></author>
	</entry>
</feed>