Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > CBitmapButton кнопка и раисунок


Автор: Lenkov 23.9.2009, 11:03
С помощью класса CBitmapButton, создал рисунок на кнопке, а наблюдаю лишь рисунок, как таковой кнопки не видно, но рисунок работает как кнопка. - Так и должно быть или нет.
Нужно что была видна и кнопка и на ней был рисунок! 
Код

m_BitButton.AutoLoad(IDC_BUTTON1, this)

Автор: Earnest 23.9.2009, 13:32
Насколько я помню, битмап-баттон предполагает полное онер-дро.
 Т.е. стандартно подразумевается, что полное отображение кнопки будет содержать твоя картинка. Причем, нужно предоставить как отжатое, так и нажатое отображение. Но можно самому перехватить DrawItem и дополнитеьно рисовать основу кнопки самому.

Автор: Lenkov 23.9.2009, 14:51
А размер кнопки при этом не имеет значения? а то я менял а результат не изменился!

Добавлено через 4 минуты и 19 секунд
В этом примере вроде бы ничего нет связанного с DrawItem, а кнопки отображаются:
http://www.codeguru.com/cpp/controls/buttonctrl/bitmapbuttons/article.php/c5177/

Автор: Earnest 23.9.2009, 15:50
Ну и разберись в приведенном коде, чего спрашивать-то? Хочешь, чтобы за тебя это сделали? Насчет размера кнопки - картинка туда StrechBlt переносится, впихиваясь в нужные размеры. Наверное. Смотри код MFC.

Автор: Lenkov 24.9.2009, 10:26
так вот именно, там тоже самое что и у меня! наверное я изначально сам подумал это сделать! Или ты один такой умный?!

Автор: Earnest 25.9.2009, 07:23
Объясняю специально для тех кто в танке.
Задавать нужно конкретные вопросы, лучше с небольшими фрагментами кода. 

Я сказала, что по-умолчанию предоставленная картинка должна содержать кнопку полностью. А про DrawItem говорила, как про возможный вариант сделать по-другому. 

Автор: Lenkov 17.10.2009, 13:24
Цитата

Ты выбрал рисунки "плоские" - то есть, обрати внимание как нарисована стандартная кнопка: у неё левая и верхняя граница окрашены белым, а нижняя и правая чёрным или тёмно-серым, а в нажатом состоянии наоборот - это создаёт эффект объёмности кнопки. Сделай тоже самое на своих рисунках и у тебя всё получится.

 И действительно, если это применить к рисункам, то они кажутся объемными.

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