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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTreeView  (Прочитано 4083 раз)
Emc
Гость
« : Сентябрь 03, 2007, 14:17 »

Есть модель, есть QTreeView.
Задача - по двойному клику мыши и нажатию клавиши Enter на текущий item исполнить функцию в слоте.
Вроде бы все просто, есть сигналы void activated ( const QModelIndex & index ) и void doubleClicked ( const QModelIndex & index ),
Но по двойному клику испускаются оба сигнала и соответственно дважды исполняется слотовая функция. Есть ли варианты этого избежать??
Записан
denka
Гость
« Ответ #1 : Сентябрь 03, 2007, 14:37 »

Переопределить mouseDoubleClickEvent
Записан
Emc
Гость
« Ответ #2 : Сентябрь 03, 2007, 14:54 »

да, действительно просто - спасибо
Записан
Sergey B.
Программист
*****
Offline Offline

Сообщений: 544



Просмотр профиля WWW
« Ответ #3 : Сентябрь 04, 2007, 05:11 »

А просто убрать

Код:
void doubleClicked ( const QModelIndex & index )

так как:

void QAbstractItemView::activated ( const QModelIndex & index )   [signal]
This signal is emitted when the item specified by index is activated by the user.
How to activate items depends on the platform; e.g., by single- or double-clicking the item,
or by pressing the Return or Enter key when the item is current.
See also clicked(), doubleClicked(), entered(), and pressed().
« Последнее редактирование: Сентябрь 04, 2007, 05:13 от Sergey B. » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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