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


Вызов функции создания окна Toolbar - часть 3


/p>

Как мы уже говорили, вы можете создать Toolbar при помощи функции CreateWindowEx. Однако в этом случае вам придется добавлять к Toolbar изображение кнопок и сами кнопки, посылая ему сообщения TB_ADDBITMAP и TB_ADDBUTTONS.

Ниже приведен фрагмент исходного текста приложения, создающего Toolbar при помощи функции CreateWindowEx:

TBADDBITMAP tbab; hwndTb = CreateWindowEx(0, TOOLBARCLASSNAME, (LPSTR)NULL, WS_CHILD | WS_BORDER | WS_VISIBLE | TBSTYLE_TOOLTIPS | CCS_ADJUSTABLE, 0, 0, 0, 0, hWnd, (HMENU)IDT_TOOLBAR, // идентификатор органа Toolbar hInst, // идентификатор приложения NULL); if(hwndTb == NULL) return FALSE;

SendMessage(hwndTb, TB_BUTTONSTRUCTSIZE, (WPARAM) sizeof(TBBUTTON), 0);

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

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

Сразу после создания окна Toolbar мы посылаем ему сообщение TB_BUTTONSTRUCTSIZE, указывая в нем размер структуры TBBUTTON.

Затем мы заполняем структуру TBADDBITMAP:

typedef struct { HINSTANCE hInst; UINT nID; } TBADDBITMAP, *LPTBADDBITMAP;

В поле hInst этой структуры мы записываем идентификатор приложения, в поле nID - идентификатор изображения кнопок, определенного в ресурсах приложения.

Адрес заполненной структуры типа TBADDBITMAP и количество изображений мы передаем в качестве параметров сообщения TB_ADDBITMAP.

После этого мы добавляем в Toolbar кнопки, передавая ему сообщение TB_ADDBUTTONS. Через параметры этого сообщения мы передаем количество кнопок (с учетом разделителей) и адрес заполненной структуры TBBUTTON, описывающей кнопки.




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



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