Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Нестандартный контрол в VS2015
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Программирование
карамболь
Здравствуйте. Понимаю, что это тема наверное уже набила оскомину )
Однако ) Создаю круглую кнопку через CreateEllipticRgn и SetWindowRgn.
Все прекрасно работает, но обламывает то, что у кнопки рваные края получаются (видно ступеньки пикселов на краях), хотя прямоугольник задаю при создании кнопки 50 на 50.
Можно это как-нибудь поправить ? Спасибо
пысы. Вин7, визуалстудио15 winapi c++
Daniil
С альфа-каналом надо играться для сглаживания.
Это не поможет? https://www.codeproject.com/Articles/7944/T...Anti-Aliased-Ed
карамболь
Цитата(Daniil @ Apr 27 2017, 09:27) *
С альфа-каналом надо играться для сглаживания.
Это не поможет? https://www.codeproject.com/Articles/7944/T...Anti-Aliased-Ed

не знаю поможет ли, пошел читать... сам регион кривой получается, даже если его просто черным цветом залить
Daniil
Цитата(карамболь @ Apr 27 2017, 13:44) *
не знаю поможет ли, пошел читать... сам регион кривой получается, даже если его просто черным цветом залить


Так и должно быть, если сглаживания нет.
Наглядная картинка - https://msdn.microsoft.com/en-us/library/9t...(v=vs.110).aspx
карамболь
Цитата(Daniil @ Apr 27 2017, 10:05) *
Так и должно быть, если сглаживания нет.
Наглядная картинка - https://msdn.microsoft.com/en-us/library/9t...(v=vs.110).aspx

т.е. стандартными средствами от этого не избавится ? Не хотелось бы сильно погружаться в дизайн и тратить уйму времени. Программа технологическая, просто хотелось немного красоты добавить )
Daniil
Цитата(карамболь @ Apr 27 2017, 14:08) *
т.е. стандартными средствами от этого не избавится ? Не хотелось бы сильно погружаться в дизайн и тратить уйму времени. Программа технологическая, просто хотелось немного красоты добавить )

Совсем стандартными - не знаю такого способа.
Проще всего, наверное, нарисовать сглаженную картинку с кнопками, а затем ее уже накладывать на регион.
Вы первый проект все таки посмотрите - там решают почти аналогичную проблему.
карамболь
Цитата(Daniil @ Apr 27 2017, 10:19) *
Совсем стандартными - не знаю такого способа.
Проще всего, наверное, нарисовать сглаженную картинку с кнопками, а затем ее уже накладывать на регион.
Вы первый проект все таки посмотрите - там решают почти аналогичную проблему.

читаю уже, идея понятна, реализация уж больно замороченная если этих кнопок будет много
k155la3
Цитата(карамболь @ Apr 27 2017, 08:55) *
. . .
Все прекрасно работает, но обламывает то, что у кнопки рваные края получаются (видно ступеньки пикселов на краях), хотя прямоугольник задаю при создании кнопки 50 на 50.
. . .

В примерах для студии (старые, MFC) есть релаизация контролв-кнопок самой разнообразной формы - круглые, с вырезами итп.
Насколько помню, никаких рваных краев не видно. Может это ОНО ?

карамболь
Цитата(k155la3 @ Apr 28 2017, 12:21) *
В примерах для студии (старые, MFC) есть релаизация контролв-кнопок самой разнообразной формы - круглые, с вырезами итп.
Насколько помню, никаких рваных краев не видно. Может это ОНО ?

может и оно, только найти не могу )
k155la3
Цитата(карамболь @ Apr 28 2017, 12:48) *
может и оно, только найти не могу )

кажется этот пример у Караева
карамболь
спасибо
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.