crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Закруглённость углов у формы
Robin Bobin
  опции профиля:
сообщение 24.6.2012, 17:01
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 17
Регистрация: 27.6.2010
Пользователь №: 1837

Спасибо сказали: 0 раз(а)




Репутация:   0  


Подскажите, как можно сделать форму с закруглёнными углами?

Спасибо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 25.6.2012, 22:13
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Таблицы стилей? В Примеры таблиц стилей Qt есть пример QPushButton с закруглением углов на основе него думается мне можно и закруглить форму. Ищи по ключевому предложению: закругление углов.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Robin Bobin
  опции профиля:
сообщение 25.6.2012, 22:53
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 17
Регистрация: 27.6.2010
Пользователь №: 1837

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(ViGOur @ 25.6.2012, 23:13) *
Таблицы стилей? В Примеры таблиц стилей Qt есть пример QPushButton с закруглением углов на основе него думается мне можно и закруглить форму. Ищи по ключевому предложению: закругление углов.

Рисует прямоугольник с закруглёнными углами на форме, обрезанные углы видимы.
setStyleSheet("MainWindow {"
"background-color: red;"
"border-style: outset;"
"border-width: 2px;"
"border-radius: 10px;"
"border-color: beige;"
"font: bold 14px;"
"min-width: 10em;"
"padding: 60px;"
"}"
);
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Robin Bobin
  опции профиля:
сообщение 28.6.2012, 16:30
Сообщение #4


Студент
*

Группа: Новичок
Сообщений: 17
Регистрация: 27.6.2010
Пользователь №: 1837

Спасибо сказали: 0 раз(а)




Репутация:   0  


Делается это так:

void MainWindow::resizeEvent(QResizeEvent * /* event */)
{
int side = qMin(width(), height());
QRegion maskedRegion(width() / 2 - side / 2, height() / 2 - side / 2, side,
side, QRegion::Ellipse);
setMask(maskedRegion);
}

взято из:
http://doc.trolltech.com/4.3/widgets-shapedclock.html


НО! Если сделать форму прозрачной(например setWindowOpacity(0.7);), то при перемещении формы тянется шлейф - выглядит некрасиво
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


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




RSS Текстовая версия Сейчас: 30.1.2025, 5:34