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


Сообщения для Toolbar


Посылая сообщения органу Toolbar , приложение может управлять кнопками, получать информацию о состоянии кнопок, вызывать на экран диалоговую панель для настройки Toolbar и выполнять множество других действий. Ниже мы приведем краткое описание сообщений, предназначенных для Toolbar. Полную информацию вы сможете найти в справочной системе SDK для Win32.

TB_ADDBITMAP

Добавление одного или нескольких изображений к списку изображений органа управления Toolbar .

Параметры сообщения:

wParam = (WPARAM) nButtons; // количество добавляемых // изображений lParam = (LPARAM) (LPTBADDBITMAP) lptbab; // указатель на // структуру TBADDBITMAP

Как мы уже говорили, для Toolbar вы должны подготовить изображение, содержащее несколько картинок, которые будут нарисованы на кнопках. Если вы создаете Toolbar функцией CreateWindowEx, для добавления изображений необходимо послать созданному окну сообщение TB_ADDBITMAP:

tbab.hInst = hInst; tbab.nID = IDB_TBBITMAP; SendMessage(hwndTb, TB_ADDBITMAP, (WPARAM)8, (LPARAM)&tbab);

TB_ADDBUTTONS

Добавление кнопок к органу управления Toolbar .

wParam = (WPARAM) (UINT) uNumButtons; // количество кнопок lParam = (LPARAM) (LPTBBUTTON) lpButtons; // указатель на // заполненный массив структур TBBUTTON

Это сообщение используется в процессе создания Toolbar , так же как и предыдущее:

SendMessage(hwndTb, TB_ADDBUTTONS, (WPARAM)11, (LPARAM)&tbButtons);

Количество кнопок задается с учетом промежутков между группами кнопок. Каждый промежуток при этом считается за одну кнопку, хотя вы можете создавать промежутки размером в несколько кнопок (например, чтобы разместить там другие органы управления).

TB_ADDSTRING

Добавление новых текстовых строк в список органа управления Toolbar .

wParam = (WPARAM) (HINSTANCE) hinst; // идентификатор модуля lParam = (LPARAM) MAKELONG(idString, 0); // идентификатор // строки

Вы можете добавлять текстовые строки не только из ресурсов приложения, но и из массива в оперативной памяти. В этом случае параметр hinst должен быть равен нулю, а через параметр lParam необходимо передать адрес массива строк. Каждая строка в массиве должна заканчиваться двоичным нулем, а последняя - двумя нулями.

TB_AUTOSIZE




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



Книжный магазин