RC86 Posted January 8, 2019 Share Posted January 8, 2019 Hi, I'd simply like to be able to make the tabs themselves read-only with only the buttons I place on the GUI being able to change them. I am navigating the tabs using the following: GUICtrlSetState($TStep1, $GUI_SHOW) GUICtrlSetData($mode, "Tab1") I've checked through the properties and can't seem to be able to disable the user from selecting any tab they wish manually. Any help would be appreciated. Thanks R Link to comment Share on other sites More sharing options...
BrewManNH Posted January 8, 2019 Share Posted January 8, 2019 Have you tried disabling them? Without a script to test this on, you'll get little help as most people won't bother to take the time to create a script just to test things. If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator Link to comment Share on other sites More sharing options...
RC86 Posted January 8, 2019 Author Share Posted January 8, 2019 Apologies, here is an example of the code I am using. I've tried a few of the options for the tab control itself in the Properties, Styles and ExStyles but nothing has done what I'm after. #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 305, 212, 192, 124) $Tab1 = GUICtrlCreateTab(8, 8, 289, 193) $TabSheet1 = GUICtrlCreateTabItem("TabSheet1") $Button1 = GUICtrlCreateButton("Go to Tab 2", 32, 56, 75, 25) $TabSheet2 = GUICtrlCreateTabItem("TabSheet2") $Button2 = GUICtrlCreateButton("Go to Tab 1", 33, 57, 75, 25) GUICtrlCreateTabItem("") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 GUICtrlSetState($TabSheet2, $GUI_SHOW) Case $Button2 GUICtrlSetState($TabSheet1, $GUI_SHOW) EndSwitch WEnd Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted January 8, 2019 Moderators Share Posted January 8, 2019 RC86, I would do something like this: #include <GUIConstantsEx.au3> $Form1 = GUICreate("Form1", 305, 212, 192, 124) $Tab1 = GUICtrlCreateTab(8, 8, 289, 193) $TabSheet1 = GUICtrlCreateTabItem("TabSheet1") $Button1 = GUICtrlCreateButton("Go to Tab 2", 32, 56, 75, 25) $TabSheet2 = GUICtrlCreateTabItem("TabSheet2") $Button2 = GUICtrlCreateButton("Go to Tab 1", 33, 57, 75, 25) GUICtrlCreateTabItem("") GUISetState(@SW_SHOW) Global $iSelectedTab = $TabSheet1 While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 GUICtrlSetState($TabSheet2, $GUI_SHOW) $iSelectedTab = $TabSheet2 Case $Button2 GUICtrlSetState($TabSheet1, $GUI_SHOW) $iSelectedTab = $TabSheet1 Case $Tab1 If GUICtrlRead($Tab1, 1) <> $iSelectedTab Then GUICtrlSetState($iSelectedTab, $GUI_SHOW) EndIf EndSwitch WEnd M23 RC86 1 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Zedna Posted January 8, 2019 Share Posted January 8, 2019 #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 305, 212, 192, 124) $Tab1 = GUICtrlCreateTab(8, 8, 289, 193) $TabSheet1 = GUICtrlCreateTabItem("TabSheet1") $Button1 = GUICtrlCreateButton("Go to Tab 2", 32, 56, 75, 25) $TabSheet2 = GUICtrlCreateTabItem("TabSheet2") $Button2 = GUICtrlCreateButton("Go to Tab 1", 33, 57, 75, 25) GUICtrlCreateTabItem("") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### GUICtrlSetStyle($Tab1, $WS_DISABLED) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 GUICtrlSetState($TabSheet2, $GUI_SHOW) Case $Button2 GUICtrlSetState($TabSheet1, $GUI_SHOW) EndSwitch WEnd RC86 1 Resources UDF ResourcesEx UDF AutoIt Forum Search Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted January 9, 2019 Moderators Share Posted January 9, 2019 Zedna, Nice. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
RC86 Posted January 16, 2019 Author Share Posted January 16, 2019 Thanks very much @Zedna and @Melba23 that's awesome! R Link to comment Share on other sites More sharing options...
dmob Posted January 17, 2019 Share Posted January 17, 2019 (edited) If your intention is a wizard style GUI, you could also move the tab sheet control up to hide the tab controls. Here's a rough example: #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 292, 212, 192, 124) $Tab1 = GUICtrlCreateTab(0, -22, 294, 193) $TabSheet1 = GUICtrlCreateTabItem("TabSheet1") $Button1 = GUICtrlCreateButton("Go to Tab 2", 32, 56, 75, 25) $TabSheet2 = GUICtrlCreateTabItem("TabSheet2") $Button2 = GUICtrlCreateButton("Go to Tab 1", 33, 57, 75, 25) GUICtrlCreateTabItem("") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 GUICtrlSetState($TabSheet2, $GUI_SHOW) Case $Button2 GUICtrlSetState($TabSheet1, $GUI_SHOW) EndSwitch WEnd Edited January 17, 2019 by dmob Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now