![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Гость_guest_* |
![]()
Сообщение
#1
|
Гости ![]() |
Привет всем. Есть задача, нужно сделать виджет как на картинке: Пример.
Какие могут быть идеи? Есть идея наследоваться от QSlider, переопределить paintEvent, задать minValue = 0 maxValue = 1? |
|
|
ViGOur |
![]()
Сообщение
#2
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
По моему лучше унаследовать QCheckBox, дополнительно можно будет подписать, что выкл\выкл.
![]() |
|
|
Гость_guest_* |
![]()
Сообщение
#3
|
Гости ![]() |
Я думал уже над этим. Не могу придумать, как это сделать (добавить например "бегунок" который будет делать вкл.\выкл., если это checkbox). Как это "заюзать" с помощью paintEvent? Может есть сорцы с примером (checkbox)?
|
|
|
ilyabvt |
![]()
Сообщение
#4
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: ![]() ![]() ![]() |
Наследоваться от QWidget и переопределять paintEvent и mousePressEvent.
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#5
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
По моему лучше унаследовать QCheckBox, согласен, явно выраженые два состояния, ещё можно просто кнопку со свойством trigger.А если флажёк, то можно попробовать QSS по аналогии с Вебом Как это "заюзать" с помощью paintEvent? можно примитивно, просто менять картинкиПосмотри вот это приложение (для запуска нужно Qt 4.6+ и MinGW/GCC4.4) в нём примеры виджетов, правда по щелчку не переключается, нужно двигать мышкой, но это поправимо. |
|
|
alexei-evil |
![]()
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 8 Регистрация: 10.1.2012 Пользователь №: 3114 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Юзать QCheckBox. Через setStyleSheet подкладывать нужные картинки для каждого состояния. Проще некуда, по моему.
|
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 9.4.2025, 18:42 |