Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.95/22: Рейтинг темы: голосов - 22, средняя оценка - 4.95
New
0 / 0 / 0
Регистрация: 22.03.2008
Сообщений: 11
1

Создание кнопок на ToolBar-е

07.08.2008, 10:22. Просмотров 4032. Ответов 3
Метки нет (Все метки)

Создаю Win32 Application, в оконной процедуре главного окна пишу (WM_CREATE):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
DWORD  dwStyle; //стиль тулбара
TBADDBITMAP tb; //расположение битмапа
TBBUTTON tbButton[15]; //массив кнопок
 
dwStyle  = WS_CHILD | WS_VISIBLE | WS_DLGFRAME | CCS_TOP | CCS_NORESIZE | TBSTYLE_TOOLTIPS | TBSTYLE_FLAT;
tb.hInst = hInst;
tb.nID  = IDR_TOOLBAR; //номер битмапа в ресурсах
tbButton[0].iBitmap   = ID_NEW;
tbButton[0].idCommand  = 0;
tbButton[0].fsState   = TBSTATE_ENABLED;
tbButton[0].fsStyle   = TBSTYLE_BUTTON;
tbButton[0].bReserved[0] = 0;
tbButton[0].bReserved[1] = 0;
tbButton[0].dwData   = 0;
tbButton[0].iString   = 0;
...
tbButton[14].iBitmap  = ID_MOVERIGHT;
tbButton[14].idCommand  = 0;
tbButton[14].fsState  = TBSTATE_ENABLED;
tbButton[14].fsStyle  = TBSTYLE_BUTTON;
tbButton[14].bReserved[0] = 0;
tbButton[14].bReserved[1] = 0;
tbButton[14].dwData   = 0;
tbButton[14].iString  = 0;
 
hWndToolBar = CreateWindowEx(0, TOOLBARCLASSNAME, NULL, dwStyle, 0, 0, 0, 0, hWnd, 0, hInst, NULL);
 
SendMessage(hWndToolBar, TB_BUTTONSTRUCTSIZE,(WPARAM) sizeof(TBBUTTON), 0);
SendMessage(hWndToolBar, TB_ADDBITMAP, (WPARAM)15, (LPARAM)&tb);
SendMessage(hWndToolBar, TB_ADDBUTTONS, (WPARAM)15, (LPARAM)&tbButton);
SendMessage(hWndToolBar, TB_SETBITMAPSIZE, 0, MAKELONG(16, 16));
SendMessage(hWndToolBar, TB_SETBUTTONSIZE, 0, MAKELONG(16, 16));
Тулбар создаётся, кнопки создаются, но без битмапов и к ним из программы ни как не обратиться.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2008, 10:22
Ответы с готовыми решениями:

Создание ToolBar: CreateToolbarEx()
Здравствуйте! Не получается создать ToolBar. На мой взгляд все правильно,...

Имитация нажатия кнопок клавиатуры нажатиями кнопок в окне
Скажите,как заменить нажатие кнопок клавиатуры на нажатие кнопок в окне?

Моя иконка в Toolbar
что нужно передать в iBitmap стуктуры TBBUTTON чтобы установить туда свою...

Смещенный Toolbar o_O
Доброго времени суток, друзья. Закончил работать с программой в Debug-версии,...

Использование иконок из dll в toolbar
На первый взгляд задача является тривиальной, но начав ее решать я зашел в...

3
XuTPbIu_MuHTAu
Эксперт С++
2235 / 750 / 25
Регистрация: 27.05.2008
Сообщений: 1,498
09.08.2008, 18:20 2
Плохо помню,что и как с тулбарами. По-моему,ты неправильно заполняешь
поле iBitmap структур TBBUTTON. Там должен быть не идентификатор ресурса,а его порядковый номер. Он определяется порядком,в котором ты добавляешь битмапы к тулбару.
0
mikityak
617 / 22 / 0
Регистрация: 30.09.2007
Сообщений: 357
09.08.2008, 23:48 3
%) CreateToolbarEx.zip
0
New
0 / 0 / 0
Регистрация: 22.03.2008
Сообщений: 11
14.08.2008, 13:09  [ТС] 4
Цитата Сообщение от mikityak Посмотреть сообщение
Файл повреждён
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.08.2008, 13:09

ToolBar отцы и дети. В чём дело не понимаю! научите :(
Пишу модуль для одной проги, всё простенько. Есть там тулбарчик древний. Задача...

Стиль для ToolBar. Чтобы его можно было передвигать по форме
Во многих программах панели инструментов можно передвигать мышкой. Не могу...

Создание вложенных кнопок в toolbar
Всем доброе время суток! Подскажите пожалуйста, как в toolbare создать кнопки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru