Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/24: Рейтинг темы: голосов - 24, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 22.03.2008
Сообщений: 11

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

07.08.2008, 10:22. Показов 5093. Ответов 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
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.08.2008, 10:22
Ответы с готовыми решениями:

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

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

Пивязка кнопок ToolBar
На ToolBar кидаю кнопки- его собственные либо с вкладки стандарт неважно и все они прижимаются сразу слева. 1. Вопрос- есть ли там...

3
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
09.08.2008, 18:20
Плохо помню,что и как с тулбарами. По-моему,ты неправильно заполняешь
поле iBitmap структур TBBUTTON. Там должен быть не идентификатор ресурса,а его порядковый номер. Он определяется порядком,в котором ты добавляешь битмапы к тулбару.
0
 Аватар для mikityak
617 / 22 / 0
Регистрация: 30.09.2007
Сообщений: 357
09.08.2008, 23:48
%) CreateToolbarEx.zip
0
0 / 0 / 0
Регистрация: 22.03.2008
Сообщений: 11
14.08.2008, 13:09  [ТС]
Цитата Сообщение от mikityak Посмотреть сообщение
Файл повреждён
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.08.2008, 13:09
Помогаю со студенческими работами здесь

Код для кнопок компонента ToolBar
на форме компонент Image и ToolBar на ToolBar 2 кнопки ToolButton пишу код для кнопки чтобы открыть изображение if...

Глюк Toolbar при попытке управлять состоянием кнопок
Глюк проявился при попытке управлять состоянием кнопок (нажата - не нажата). Проявляется во всей красе - чтобы кнопка отжалась приходится...

Создание Toolbar' а
Необходимо создать Toolbar с 3-я кнопками, по нажатию которых будут вызваны диалоги: a) открытие текстового файла в поле редактирования...

Создание Toolbar
Нужно из имеющего изображения кнопок создать панель инструментов. Делаю все, как описано на MSDN: импортирую изображение в файл ресурсов,...

Создание ToolBar в Fragment
Создаю активити на нем фрагмент, а в фрагменте должен быть ToolBar! Но его нет! Делаю так Активити: public class MainGridActivity...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru