|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.02.2012, 12:49 | #1 |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
как создать круглую кнопку, созданную на WinAPI?
Здравствуйте. Хочу сделать круглую кнопку на WinApi.
Читал, что это можно сделать, используя регионы. Мой код: Код:
в результате, кнопку можно нажать только в указанном регионе. однако, углы у кнопки не обрезаются. кнопка выглядит не круглой, а квадратной. что еще нужно сделать, чтобы получить круглую кнопку на WinAPI? ели это имеет значение, то текст на кнопке не нужен. P.s. Большая просьба: в гуууугл и поиск по форуму не посылать! Я там уже был и не нашел подходящие ответы. Последний раз редактировалось BLACK_RAIN; 13.02.2012 в 12:57. |
13.02.2012, 15:42 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А я нашел за 20 сек http://www.bdrc.ru/load/2-1-0-60
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
13.02.2012, 16:18 | #3 | |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
Цитата:
Я только заменил форму и кнопку на WinAPI. Код:
если делать кнопки на WinAPI, то происходит так, как описано в первом посте. может, при создании моей кнопки, ей надо какие-то дополнительные стили присвоить? Последний раз редактировалось BLACK_RAIN; 13.02.2012 в 16:45. |
|
14.02.2012, 00:18 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Стиль WS_CLIPSIBLINGS как минимум нужно добавить, кнопка круглая будет, но заморочки с нормальной прорисовкой кнопки останутся
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.02.2012, 12:48 | #5 | |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
Цитата:
просто у меня окно и кнопка были одинакового цвета и кнопку не было видно. тогда еще вопрос: как перекрасить фон кнопки? читал, что это делается в сообщении WM_DRAWITEM (кнопке надо добавить стиль BS_OWNERDRAW) с использованием кистей HBRUSH. но, как именно это делается, я недогоняю. Сейчас проверил. Если я применяю к кнопке стиль BS_OWNERDRAW, то в сообщении WM_DRAWITEM WPARAM всегда равен 0, а должен быть равен идентификатору кнопки (так написано в MSDN). И не важно, присутствует ли стиль WS_CLIPSIBLINGS. ListBox'ы и Label'ы прекрасно перекрашиваются, а вот с кнопками фигня какая-то подскажите? Последний раз редактировалось BLACK_RAIN; 14.02.2012 в 13:08. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как создать кнопку для всех листов книги? | kipish_lp | Microsoft Office Excel | 5 | 06.05.2010 17:43 |
Как создать чудо кнопку для программы складского учета в Excel | Фиштрех | Microsoft Office Excel | 4 | 05.04.2010 23:14 |
как создать кнопку в форме, которая будет создавать отчет | Tatu | Microsoft Office Access | 3 | 04.03.2010 19:13 |
КАК создать кнопку | DEZuv | Microsoft Office Access | 4 | 04.04.2009 11:50 |
Как создать кнопку в панели для окон???? | Angel86rus | Общие вопросы Delphi | 4 | 03.10.2007 19:01 |