Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / QT setMask как убрать зазубрины? / 8 сообщений из 8, страница 1 из 1
26.04.2015, 21:37
    #38945662
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
делаю нестандартную форму. в качестве маски загружается png файл. все хорошо, но там где есть закругления видны зазубрины.есть ли какой нить другой способ сделать нестандартную форму по маске из картинки?
...
Рейтинг: 0 / 0
27.04.2015, 09:04
    #38945824
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
Закругления должны быть нарисованы на альфа-канале.
...
Рейтинг: 0 / 0
27.04.2015, 11:14
    #38946000
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
maytonЗакругления должны быть нарисованы на альфа-канале.
а через setMask и Qpixmap это решается?
...
Рейтинг: 0 / 0
27.04.2015, 11:27
    #38946013
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
Если честно я не кодил графику на Qt но здесь http://stackoverflow.com/questions/11845872/set-qt-widget-mask
пишут:

if you're using a .png with alpha like this one :

you can set its shape as a mask like this:

Код: plaintext
1.
2.
3.
4.
5.
6.
QPushButton button;
button.resize(50,50);
button.show();

QPixmap mask("D:/shape.png");
button.setMask(mask.mask());
...
Рейтинг: 0 / 0
27.04.2015, 12:07
    #38946068
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
mayton,

ок я так и делаю, получается сама png картинка должна быть с альфа?
...
Рейтинг: 0 / 0
27.04.2015, 17:06
    #38946449
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
Картежникmayton,

ок я так и делаю, получается сама png картинка должна быть с альфа?Да.
Маска определяет какие точки будут реагировать на мышь.
...
Рейтинг: 0 / 0
27.04.2015, 21:44
    #38946671
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
вот что у меня получается используя
Код: plaintext
1.
2.
QPixmap pix(qApp->applicationDirPath()+"/mask.png");
    mylabel->setMask(pix.mask());
...
Рейтинг: 0 / 0
30.04.2015, 16:12
    #38949900
Картежник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT setMask как убрать зазубрины?
Картежник,

в итоге понял что через pixmap и setmask у меня не получится(возможно у кого то другого получится).Решил отказаться от них, и выбрал QGraphicsView.
Задав ему прозрачность через setstylesheet и setattribute, нарисовал на нем, используя QPainter, загруженную в QImage картинку.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / QT setMask как убрать зазубрины? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]