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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: меню в QListView  (Прочитано 5884 раз)
piton
Гость
« : Март 29, 2005, 20:16 »

подскажите, pls, как можно добавить меню, вызываемое правой кнопкой мыши, к элементам QListView.
(например, как это сделано в KFind - найденный в списке файл можно открыть...)
спасибо.
Записан
Sergeich
Гость
« Ответ #1 : Март 30, 2005, 01:11 »

Юзай сигнал QListView::contextMenuRequested ( QListViewItem * item, const QPoint & pos, int col )
Записан
Hellenna
Гость
« Ответ #2 : Март 30, 2005, 08:56 »

Код:
//где нибудь, создаешь QPopupMenu
QPopupMenu* my_meny=new QPopupMenu(this);
my_menu->insertItem(tr("this first item")); /*посмотри, есть разные функции insertItem(...), написала самую простую*/
my_menu->insertItem(tr("this second item"));

/*в конструкторе связыаешь сигнал QListView, который написал Sergeich, с о слотом*/
connect(my_list_view, SIGNAL(contextMenuRequested ( QListViewItem * item, const QPoint & pos, int col )), this, SLOT(listViewMenuRequested ( QListViewItem * item, const QPoint & pos, int col )));

//при обработке этого сигнала показываем меню
void My_Form::listViewMenuRequested ( QListViewItem * item, const QPoint & pos, int col ){
my_menu->popup(pos);
....
}


пример есть здесь: http://doc.trolltech.com/3.2/listviews-example.html#x1970
C qt идет пример, кажется, называется listviews.
Записан
piton
Гость
« Ответ #3 : Март 30, 2005, 10:36 »

спасибо!
попробую сегодня..
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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