Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > проблема с CreateToolbarEx


Автор: yngwie19 10.4.2009, 10:38
Всем привет у меня вот какая проблема при создании toolbar Я задаю что в ней будут 3 кнопки с размерами 32,32. Они располагаются как-то неровно - одна шире другой. Потом Я задал размер 16,16. И они вообще сдвинулись влево, а справа осталось пустое место этой панели. Вообщем Я выяснил что toolbar создается всегда одного и того же размера. Как мне сделать так чтобы кнопки были ровными и размер панели подстраивался под размер всех кнопок. Вот то что у меня получается:
размер 32 x 32:
http://ipicture.ru/Gallery/Viewfull/17105053.html
размер 16 x 16:
http://ipicture.ru/Gallery/Viewfull/17105096.html

Автор: GremlinProg 10.4.2009, 13:52
задай нужный размер картинки:
Код

::SendMessage(hwndToolBar,TB_SETBITMAPSIZE,0,MAKELONG(32,32));

Автор: yngwie19 10.4.2009, 21:04
GremlinProg, т.е дело в том что фактически картинки 32 на 32, а в функции указываю что они 16 на 16 ?

Автор: GremlinProg 10.4.2009, 23:22
если был такой вызов TB_SETBITMAPSIZE, то кнопки могут быть неквадратные, если только ты задал для них текст, или не вызвалTB_AUTOSIZE или поставил стиль какой-нибудь типа "списка"
гадать нет смысла, показывай настройку тулбара

Автор: yngwie19 11.4.2009, 00:04
Код

CreateToolbarEx(hwnd,WS_CHILD | WS_BORDER | WS_VISIBLE,-1,3,hInstance,ID_BTNS,tbb,3,16,16,16,16,sizeof(TBUTTON);)

ID_BTNS - идентификатор изобраджения с кнопками 32 x 32

Автор: GremlinProg 11.4.2009, 00:14
Цитата(yngwie19 @  11.4.2009,  02:04 Найти цитируемый пост)
16,16,16,16,

а почему не 32?
+ размеры кнопок, в любом случае, должны быть больше размеров картинок, но ни как не равны,
у кнопок с каждого края еще по крайней мере по 2 пиксела - бордюр

Автор: yngwie19 11.4.2009, 08:14
Цитата(GremlinProg @  11.4.2009,  00:14 Найти цитируемый пост)
а почему не 32?

ну вот посмотри на скрины сверху нтам 2 варианта 16 и 32, где 32 они не ровные. Может быть и правда за счет 2 -ух пикселей

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)