Перейти к содержанию
    

Нестандартный контрол в VS2015

Здравствуйте. Понимаю, что это тема наверное уже набила оскомину )

Однако ) Создаю круглую кнопку через CreateEllipticRgn и SetWindowRgn.

Все прекрасно работает, но обламывает то, что у кнопки рваные края получаются (видно ступеньки пикселов на краях), хотя прямоугольник задаю при создании кнопки 50 на 50.

Можно это как-нибудь поправить ? Спасибо

пысы. Вин7, визуалстудио15 winapi c++

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С альфа-каналом надо играться для сглаживания.

Это не поможет? https://www.codeproject.com/Articles/7944/T...Anti-Aliased-Ed

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С альфа-каналом надо играться для сглаживания.

Это не поможет? https://www.codeproject.com/Articles/7944/T...Anti-Aliased-Ed

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Так и должно быть, если сглаживания нет.

Наглядная картинка - https://msdn.microsoft.com/en-us/library/9t...(v=vs.110).aspx

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так и должно быть, если сглаживания нет.

Наглядная картинка - https://msdn.microsoft.com/en-us/library/9t...(v=vs.110).aspx

т.е. стандартными средствами от этого не избавится ? Не хотелось бы сильно погружаться в дизайн и тратить уйму времени. Программа технологическая, просто хотелось немного красоты добавить )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

т.е. стандартными средствами от этого не избавится ? Не хотелось бы сильно погружаться в дизайн и тратить уйму времени. Программа технологическая, просто хотелось немного красоты добавить )

Совсем стандартными - не знаю такого способа.

Проще всего, наверное, нарисовать сглаженную картинку с кнопками, а затем ее уже накладывать на регион.

Вы первый проект все таки посмотрите - там решают почти аналогичную проблему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Совсем стандартными - не знаю такого способа.

Проще всего, наверное, нарисовать сглаженную картинку с кнопками, а затем ее уже накладывать на регион.

Вы первый проект все таки посмотрите - там решают почти аналогичную проблему.

читаю уже, идея понятна, реализация уж больно замороченная если этих кнопок будет много

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

. . .

Все прекрасно работает, но обламывает то, что у кнопки рваные края получаются (видно ступеньки пикселов на краях), хотя прямоугольник задаю при создании кнопки 50 на 50.

. . .

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

Насколько помню, никаких рваных краев не видно. Может это ОНО ?

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Насколько помню, никаких рваных краев не видно. Может это ОНО ?

может и оно, только найти не могу )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

может и оно, только найти не могу )

кажется этот пример у Караева

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...