Jump to content
Sign in to follow this  

Disabling a Tab sheet

Recommended Posts

$Form1 = GUICreate("Entity Tracker", 606, 425, 500, 241,-1, $WS_EX_ACCEPTFILES)

$Tab1 = GUICtrlCreateTab(0, 0, 625, 441)

$TabSheet1 = GUICtrlCreateTabItem("Tracker")

I was hoping to to be able to disable (i.e. prevent a user from activating the tabsheet) by:

GUICtrlSetState($TabSheet1, $GUI_DISABLE)

But this doesn't work. (Or at least I can't get it to work).

I've checked the help files and searched but can't seem to see an obvious and easy solution to this, but I'm sure one must exist.

Hoping someone might know how to do this.

Share this post

Link to post
Share on other sites

Unfortunately that seems to disable all tabsheets, rather than let me specificy which tab sheets I wish to disable.

Share this post

Link to post
Share on other sites

You can't disable, but you can avoid from clicking

#include <GUIConstantsEx.au3>

Global $afTabSheets[3] = [True, False, False]

$Gui = GUICreate("Tab",450, 300)
$Tab1 = GUICtrlCreateTab(20, 24, 425, 201)
$TabSheet1 = GUICtrlCreateTabItem("Tab1")
$TabSheet2 = GUICtrlCreateTabItem("Tab2")
$TabSheet3 = GUICtrlCreateTabItem("Tab3")

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
        Case $Tab1
            If $afTabSheets[GUICtrlRead($Tab1)] = False Then

Func _Lock_Tab()
    For $i = 0 To 3
        If $afTabSheets[$i] = True Then
            GUICtrlSetState($TabSheet1 + $i, $GUI_SHOW)

Share this post

Link to post
Share on other sites


It looks like I will have to just prevent them from clicking in there like you say.

Perhaps by using some conditional colouring I can make it look like it is disabled.

Share this post

Link to post
Share on other sites


by using some conditional colouring I can make it look like it is disabled

Then you might find this of interest. ;)


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:


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


Share this post

Link to post
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
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By andygo
      hello, please take a look:

      i use a vlc-plugin within my script, to remote and watch tv from my dreambox.
      the plugin causes some lines i can see in the SciTE console.

      how can i get / store these outputs to a $variable when the script is compiled?
    • By marko001
      Hi mates,

      The tool I developed uses different folders where files are located:

      @scriptdir contains all the .exe, some .dll and some .ini
      /logs contains log.txt
      /images contains all images needed to _imagesearch()
      /manual contains manual.chm and manual.chw
      /DB contains db.xml

      As previously discussed with Zedna, I can't use Resources UDF since _imagesearch() doesn't support embedded images but needs them stored on HDD.
      As previously discussed with Trancexx, I can embedd binaries (runbinary) but It's too risky so I decided to avoid it.

      So question is: How can I embeed all these files and folders into an executable so that when it's run it re-builds the original folders/file structure?

      What I expect to have is:

      Before compiling : all the .au3 and the folders with the files
      After compiling : just one compiled.exe and all folders with their files.

      Thanks for the support,

  • Create New...