![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
edwardoid |
![]()
Сообщение
#1
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 171 Регистрация: 1.5.2008 Из: Ереван, Армения Пользователь №: 164 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
идея проста нужно нарисовать нечто такое:
![]() Где черная зона должна быть прозрачной, зеленые прямоугольники - кнопки или любой другой виджет. Проблема в том, что элементы находятся в этих окружностях и если пользователь кликает вне этих окружностей, окружности со своим содержимым должны пропасть(стать невидимыми), т.е. только если пользователь кликнул внутри окружностей (в общем случае любая другая ограниченная площадь). Сообщение отредактировал edwardoid - 29.9.2010, 8:58 |
|
|
![]() |
Алексей1153 |
![]()
Сообщение
#2
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: ![]() ![]() ![]() |
вот так
Цитата void QPainter::setClipRegion ( const QRegion & region, Qt::ClipOperation operation = Qt::ReplaceClip ) Sets the clip region to the given region using the specified clip operation. The default clip operation is to replace the current clip region. Note that the clip region is given in logical coordinates. See also clipRegion(), setClipRect(), and Clipping. и хочь там что динамическое ![]() А зачем определять "на какой суб-виджет попал", пусть контролы сами обрабатывают клики |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 19.2.2025, 0:49 |