Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы программирования для информатиков и инженеров. Часть 2 Прикладное программирование в Windows.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
603.45 Кб
Скачать

Начальные состояния кнопок панели инструментов

 

Состояние

Значение

1

TBSTATE_CHECKED

Кнопка нажата

2

TBSTATE_ENABLED

Кнопка активна (разрешена)

3

TBSTATE_HIDDEN

Кнопка скрыта и неактивна (запрещена)

4

TBSTATE_INDETERMINATE

Кнопка закрашена серым цветом и неактивна

5

TBSTATE_PRESSED

Кнопка нажата

6

TBSTATE_WRAP

Все следующие кнопки будут отображаться в следующей строке

 

Стиль кнопки определяется значением поля fsStyle. Он может представлять собой любую из имеющих смысл комбинаций следующих значений (табл. 10.3):

 

Таблица 10.3

Стиль кнопки определяется (значения поля fsStyle)

 

Стиль

Эффект

1

TBSTYLE_BUTTON

Обычная кнопка

2

TBSTYLE_CHECK

При каждом нажатии кнопки ее состояние изменяется на противоположное (нажата-отпу­щена).

3

TBSTYLE_CHECKGROUP

Кнопка со стилем TBSTYLE_CHECK в группе кнопок, представляющей набор параметров, из которых можно выбрать только один

4

TBSTYLE_GROUP

Обычная кнопка в группе кнопок, представляющей набор параметров, из которых можно вы­брать только один

5

TBSTYLE_SEP

Задание интервала между кнопками. При задании этого стиля значение idCommand должно быть равно 0

Обратите внимание на стиль TBSTYLE_SEP. Он используется для задания промежутков между кнопками панели инструментов: при объединении этих кнопок в группы по функциональным признакам.

Поле dwData может содержать дополнительную информацию, определяемую программистом. Поле iString содержит индекс строки, ассоциированной с кнопкой. Использовать это поле не обязательно. Если это поле не используется, его значение должно быть равно 0.

По умолчанию панели инструментов являются полностью автоматическими элементами управления и не требуют от программиста каких-либо действий по управлению ими. Существует возможность программного управления панелями инструментов путем посылки им управляющих сообщений, для чего используется функция SendMessage(). Сообщения, которые можно посылать панели инструментов, сведены в таблицу 10.4.

 

Таблица 10.4

Сообщения к панели инструментов

 

Сообщение

Назначение

1

TB_CHECKBUTTON

Нажать или отпустить кнопку. Параметр wParam должен содержать идентификатор кнопки. lParam равен 0, если кнопка должна быть отпущена, либо 1, если она должна быть нажата

2

TB_ENABLEBUTTON

Запретить либо разрешить кнопку. Параметр wParam должен содержать идентификатор кнопки. lParam равен 0, если кнопка должна быть запрещена, и 1, если она должна быть разрешена

3

TB_HIDEBUTTON

Скрыть или отобразить кнопку. Параметр wParam должен содержать идентификатор кнопки. IParam равен 1, если необходимо скрыть кнопку, и 0, если требуется ее отобразить

 

Панели инструментов могут также генерировать нотификационные сообщения, которые информируют программу о происходящих в этих панелях событиях. Если речь идет о простых панелях инструментов, то нет необходимости в таких сообще­ниях. (Имена этих сообщений начинаются с TBN_. Более подробную информацию о них Вы можете получить из файла Commctrl.h,  с помощью пакета MSDN или Руководства программиста.)