реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Нестандартный контрол в VS2015
карамболь
сообщение Apr 27 2017, 05:55
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 153
Регистрация: 25-08-08
Из: Санкт-Петербург
Пользователь №: 39 813



Здравствуйте. Понимаю, что это тема наверное уже набила оскомину )
Однако ) Создаю круглую кнопку через CreateEllipticRgn и SetWindowRgn.
Все прекрасно работает, но обламывает то, что у кнопки рваные края получаются (видно ступеньки пикселов на краях), хотя прямоугольник задаю при создании кнопки 50 на 50.
Можно это как-нибудь поправить ? Спасибо
пысы. Вин7, визуалстудио15 winapi c++
Go to the top of the page
 
+Quote Post
Daniil
сообщение Apr 27 2017, 06:27
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 3-09-04
Из: Russia, Novosibirsk
Пользователь №: 590



С альфа-каналом надо играться для сглаживания.
Это не поможет? https://www.codeproject.com/Articles/7944/T...Anti-Aliased-Ed
Go to the top of the page
 
+Quote Post
карамболь
сообщение Apr 27 2017, 06:44
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 153
Регистрация: 25-08-08
Из: Санкт-Петербург
Пользователь №: 39 813



Цитата(Daniil @ Apr 27 2017, 09:27) *
С альфа-каналом надо играться для сглаживания.
Это не поможет? https://www.codeproject.com/Articles/7944/T...Anti-Aliased-Ed

не знаю поможет ли, пошел читать... сам регион кривой получается, даже если его просто черным цветом залить
Go to the top of the page
 
+Quote Post
Daniil
сообщение Apr 27 2017, 07:05
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 3-09-04
Из: Russia, Novosibirsk
Пользователь №: 590



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


Так и должно быть, если сглаживания нет.
Наглядная картинка - https://msdn.microsoft.com/en-us/library/9t...(v=vs.110).aspx
Go to the top of the page
 
+Quote Post
карамболь
сообщение Apr 27 2017, 07:08
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 153
Регистрация: 25-08-08
Из: Санкт-Петербург
Пользователь №: 39 813



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

т.е. стандартными средствами от этого не избавится ? Не хотелось бы сильно погружаться в дизайн и тратить уйму времени. Программа технологическая, просто хотелось немного красоты добавить )
Go to the top of the page
 
+Quote Post
Daniil
сообщение Apr 27 2017, 07:19
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 3-09-04
Из: Russia, Novosibirsk
Пользователь №: 590



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

Совсем стандартными - не знаю такого способа.
Проще всего, наверное, нарисовать сглаженную картинку с кнопками, а затем ее уже накладывать на регион.
Вы первый проект все таки посмотрите - там решают почти аналогичную проблему.
Go to the top of the page
 
+Quote Post
карамболь
сообщение Apr 27 2017, 07:29
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 153
Регистрация: 25-08-08
Из: Санкт-Петербург
Пользователь №: 39 813



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

читаю уже, идея понятна, реализация уж больно замороченная если этих кнопок будет много
Go to the top of the page
 
+Quote Post
k155la3
сообщение Apr 28 2017, 09:21
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



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

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

Go to the top of the page
 
+Quote Post
карамболь
сообщение Apr 28 2017, 09:48
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 153
Регистрация: 25-08-08
Из: Санкт-Петербург
Пользователь №: 39 813



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

может и оно, только найти не могу )
Go to the top of the page
 
+Quote Post
k155la3
сообщение Apr 28 2017, 10:06
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



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

кажется этот пример у Караева
Go to the top of the page
 
+Quote Post
карамболь
сообщение Apr 28 2017, 10:31
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 153
Регистрация: 25-08-08
Из: Санкт-Петербург
Пользователь №: 39 813



спасибо
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 16th April 2024 - 11:03
Рейтинг@Mail.ru


Страница сгенерированна за 0.04206 секунд с 7
ELECTRONIX ©2004-2016