![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
whyt |
![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 28 Регистрация: 29.3.2009 Пользователь №: 649 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
может туплю я..ночь уже..но вот возник вопрос, как сделать так, чтобы при клике на QComboBox - сразу после открытия выпадающего списка (но не после выбора какого нить итема) - происходило сигнал передавался в нужный мне слот..стандартные сигналы такого не позволяют..похожих тем в поиске не нашел.
|
|
|
igor_bogomolov |
![]()
Сообщение
#2
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
Как вариант.
Смотри void QComboBox::showPopup () [virtual] Наследуешся, переопределяешь этот метод, и высылаешь в нем свой сигнал. |
|
|
Litkevich Yuriy |
![]()
Сообщение
#3
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
можно еще попробовать установить фильтр событий и ловить событие "щелчёк" по QComboBox'у
|
|
|
whyt |
![]()
Сообщение
#4
|
Студент ![]() Группа: Участник Сообщений: 28 Регистрация: 29.3.2009 Пользователь №: 649 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
так, а поподробней можно? не встречал такого пока=( или ткните носом, где кого читать)
|
|
|
igor_bogomolov |
![]()
Сообщение
#5
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
Чего не встречали - наследования или фильтров событий
![]() Если фильтры, то смотрите void QObject::installEventFilter ( QObject * filterObj ) Будет примерно так: Раскрывающийся текст
Если то что я предлогал. То необходимо наследоваться от QComboBox, и переопределять метод showPopup (). В этом случае придется создовать свою модель popup. Впринципе это не сложно. Читайте, эксперементируейте. Что непонятно пишите, разберемся ![]() |
|
|
whyt |
![]()
Сообщение
#6
|
Студент ![]() Группа: Участник Сообщений: 28 Регистрация: 29.3.2009 Пользователь №: 649 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
спасибо за конкретные советы=) пробуем=)
вот на это
ругается вот так
|
|
|
igor_bogomolov |
![]()
Сообщение
#7
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
А #include <QMouseEvent> добавили?
QMouseEvent *mouseEvent = static_cast<QMouseEvent *>(event) вам возможно и не нужен. Из него можно определить только какая кнопка мыши нажата, и в кокой точке. Если эта информация не нужна, то можно эту строку убрать. Сообщение отредактировал igor_bogomolov - 6.4.2009, 12:01 |
|
|
kwisp |
![]()
Сообщение
#8
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
whyt |
![]()
Сообщение
#9
|
Студент ![]() Группа: Участник Сообщений: 28 Регистрация: 29.3.2009 Пользователь №: 649 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
нашел свой косяк - откомпилил..работает..только вот чтоб раскрыть список теперь придеца юзеру дважды кликать..неудобно, видимо придется использовать второй предложенный вариант
|
|
|
igor_bogomolov |
![]()
Сообщение
#10
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
Цитата только вот чтоб раскрыть список теперь придеца юзеру дважды кликать return true замените на return false и посмотрите что получится? Сообщение отредактировал igor_bogomolov - 6.4.2009, 12:08 |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 8.6.2025, 1:55 |