Russian Qt Forum
Ноябрь 23, 2024, 03:07 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2 3   Вниз
  Печать  
Автор Тема: doubleClick по чекбоксу во вьюхе  (Прочитано 19914 раз)
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« : Март 14, 2016, 13:33 »

Привет, друзья!
У меня имеется QTreeView, в ней первым столбцом идут элементы с чекбоксами (подписанными). Если я хочу ставить/снимать галочку очень часто, то у меня получается нежелательное срабатывание сигнала doubleClicked. Можно ли как-то обойти это поведение? При этом хочу, чтобы при двойном клике на подпись к чекбоксу сигнал doubleClicked срабатывал.
Записан
Bepec
Гость
« Ответ #1 : Март 14, 2016, 13:46 »

Установите проверку координатную. Если координаты на чекбоксе - игнорировать.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #2 : Март 14, 2016, 13:55 »

А это кроссплатформенно?
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #3 : Март 14, 2016, 13:55 »

может проще на колонку виджет назначить? тогда события ловить легко будет.
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #4 : Март 14, 2016, 13:57 »

kambala, можно подробнее? Что имеется в виду.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #5 : Март 14, 2016, 14:06 »

Кстати, забыл сказать, что мне надо, чтобы надпись была редактруемой.
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #6 : Март 14, 2016, 14:12 »

kambala, можно подробнее? Что имеется в виду.
а не, виджеты назначаются только для QTreeWidget. для QTreeView нужен делегат в таком случае.

а может проще просто разрезать чекбокс и текст на 2 колонки? Улыбающийся
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #7 : Март 14, 2016, 14:15 »

Ну это самое простое и очевидное, что я и выберу, если не найдётся годных решений. Не хочется, чтобы пользователь имел в хэдере кнопочку для упорядочивания чекбоксов Улыбающийся
Записан
Bepec
Гость
« Ответ #8 : Март 14, 2016, 16:09 »

Это кроссплатформенно будет. Во всяком случае linux/win точно.
Насколько я помню там чекбокс хитро спрятан и до него дотянуться почти нереально. Но месторасположение его вроде не меняется.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #9 : Март 14, 2016, 16:20 »

А как мне понять его габариты и положение?
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #10 : Март 14, 2016, 16:38 »

Не хочется, чтобы пользователь имел в хэдере кнопочку для упорядочивания чекбоксов Улыбающийся
ну так сортировку для них можно отключить, разве нет?
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #11 : Март 14, 2016, 16:41 »

Можно. Но само наличие кнопки просто мозолит глаза.
Ещё и ресайз колонки будет доступен.
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #12 : Март 14, 2016, 16:47 »

Еще можно свой делегат сделать, состоящий собственно из чекбокса без текста и лэйбла.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #13 : Март 14, 2016, 17:06 »

Зачем?
Это же будет тот же самый айтем, просто чекабл и без текста. Что kambala и предлагает.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #14 : Март 15, 2016, 14:15 »

А как Qt фиксирует двойной клик? Системно или же с помощью каких-нибудь таймеров?
Я могу при тыке в чекбокс сбрасывать эти таймеры? то есть, сообщать, что последующий клик будет одиночным, а не частью даблклика?
Записан
Страниц: [1] 2 3   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.053 секунд. Запросов: 23.