Операционная система Windows 95 для программиста


Описание кнопок - часть 2


Теперь займемся полем fsStyle. Как видно из названия, в это поле нужно записать стиль кнопки. Здесь вы можете использовать комбинацию следующих стилей:

Стиль кнопки Описание
TBSTYLE_BUTTON Стандартная кнопка
TBSTYLE_CHECK Кнопка с фиксацией. Эта кнопка "залипает", когда пользователь нажимает на нее. Для того чтобы вернуть кнопку в исходное состояние, необходимо нажать на нее еще раз
TBSTYLE_CHECKGROUP Кнопка с фиксацией, которая остается нажатой до тех пор, пока нажата другая кнопка из этой же группы
TBSTYLE_GROUP Стандартная кнопка, которая остается нажатой до тех пор, пока нажата другая кнопка из этой же группы
TBSTYLE_SEP Разделитель между группами кнопок

Через поле dwData можно передать дополнительные данные, которые будут хранится в описании кнопки и использоваться при необходимости. Вы можете записать в это поле нулевое значение.

И, наконец, в поле iString можно записать номер текстовой строки, которую необходимо написать на поверхности кнопки. Для добавления таких строк к внутреннему списку Toolbar необходимо послать сообщение TB_ADDSTRING , передав вместе с ним адрес буфера с текстовыми строками. Все строки в этом буфере должны быть закрыты двоичным нулем, а последняя - двумя двоичными нулями.

Если текстовые строки не используются, в поле iString следует записать нулевой значение.

Вот образец подготовленного массива структур TBBUTTON, описывающий восемь кнопок и три разделителя между ними:

TBBUTTON tbButtons[] = { { 0, ID_FILE_NEW, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0}, { 1, ID_FILE_OPEN, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0}, { 2, ID_FILE_SAVE, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0}, { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0L, 0}, { 3, ID_EDIT_CUT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0}, { 4, ID_EDIT_COPY, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0}, { 5, ID_EDIT_PASTE, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0}, { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0L, 0}, { 6, ID_FILE_PRINT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0}, { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0L, 0}, { 7, ID_HELP_ABOUT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0L, 0} };




- Начало -  - Назад -  - Вперед -