Функция GUICtrlCreateTabItem

         Описание функции


GUICtrlCreateTabItem

Создаёт TabItem (вкладку) в GUI.

GUICtrlCreateTabItem ( "text" )

Параметры

text Текст (имя) вкладки

Возвращаемое значение

Успех:Возвращает идентификатор (controlID) нового элемента.
Ошибка:Возвращает 0.

Примечания

Для дополнительной информации о настройках смотрите GUICtrlUpdate....

Для установки открытой по умолчанию вкладки, при открытии окна используйте GUICtrlSetState(-1,$GUI_SHOW), смотрите пример.

Чтобы завершить элемент tab просто создайте последнюю вкладку "tabitem" с пустым текстом "". Элемент "tabitem" (вкладка) не может быть закрашен (слишком много кода ...).

Когда используется расширенный режим, GUICtrlRead($tab,1) вернет идентификатор (controlID) вкладки вместо порядкового номера кликнутой вкладки.

Чтобы создать новый элемент в существующих tabitem используйте GUISwitch($hWin,$tabitem), чтобы выбрать его и просто создать новый элемент. Не забудьте закрыть tabitem созданием пустой вкладки - GUICtrlCreateTabItem("").

См. также

GUICtrlSetState, GUISwitch, GUIGetMsg, GUICtrlRead, GUIEventOptions (Опция), GUICtrlCreateTab

Пример

#include <GUIConstantsEx.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>

Local $tab, $tab0, $tab0OK, $tab0input
Local $tab1, $tab1combo
Local $tab2, $tab2OK, $msg, $Gui

$Gui = GUICreate("Вкладки (Tab) в GUI") ; Создаёт окно в центре экрана

GUISetBkColor(0xDEE1B4)
GUISetFont(9, 300)

$tab = GUICtrlCreateTab(10, 10, 380, 200, $TCS_BUTTONS + $TCS_VERTICAL + $TCS_RIGHT, $WS_EX_CLIENTEDGE)

$tab0 = GUICtrlCreateTabItem("o")
GUICtrlSetImage(-1, "shell32.dll", -155, 0) ; иконка вкладки
GUICtrlCreateLabel("Путь", 40, 43, 250, 17)
$tab0OK = GUICtrlCreateButton("OK", 294, 60, 46, 25)
$tab0input = GUICtrlCreateInput("C:\WINDOWS\system32", 40, 60, 255, 25)

$tab1 = GUICtrlCreateTabItem("_")
GUICtrlCreateLabel("Имя", 20, 33, 55, 17)
$tab1combo = GUICtrlCreateCombo("", 20, 50, 140)
GUICtrlSetData(-1, "Василий|Константин|Владимир|Андрей|Володя|Евгений|Сергей", "Константин") ; по умолчанию Константин

$tab2 = GUICtrlCreateTabItem("=")
GUICtrlSetState(-1, $GUI_SHOW) ; будет отображаться выбранной
GUICtrlCreateLabel("Описание", 20, 40, 120, 17)
$tab2OK = GUICtrlCreateButton("OK", 280, 165, 70, 30)

GUICtrlCreateTabItem("") ; определяет конец вкладок

GUICtrlCreateLabel('Можно применять иконки, стили оформления' & @CRLF & '$TCS_MULTILINE - вкладки в несколько рядов (вместо горизонтальной прокрутки)' & @CRLF & '$TCS_BUTTONS - вкладки как кнопки' & @CRLF & '$TCS_FLATBUTTONS+$TCS_BUTTONS - утопленные вкладки', 20, 230, 370, 100)

GUISetState()

; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
While 1
    $msg = GUIGetMsg()
    Switch $msg
        Case $GUI_EVENT_CLOSE
            ExitLoop
        Case $tab
            ; отображает кликнутую вкладку
            WinSetTitle($Gui, "", "Вкладки (Tab) в GUI, текущая " & GUICtrlRead($tab))
    EndSwitch
WEnd