контекстное меню на элемент QListWidget |
Здравствуйте, гость ( Вход | Регистрация )
контекстное меню на элемент QListWidget |
Гость_Kostya_* |
19.8.2014, 5:42
Сообщение
#1
|
Гости |
Здравствуйте! Не давно начал изучать Qt и не как не могу понять как установить КМ на элементы QListWidget, если можно дайте пример.
|
|
|
Litkevich Yuriy |
21.8.2014, 11:04
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Краткая экскурсия:
В Qt, меню и панели инструментов строятся на основе НЕвизуальных классов - QAction, которые описывают действие (например, "Копировать"). Затем действия связываются с неким визуальным объектом, например, QMenu. Для произвольного виджета, можно установить контекстное меню следующим образом: 1) Создать нужные действия 2) Связать эти действия с виджетом, с помощью его метода void QWidget::insertAction ( QAction * before, QAction * action ) 3) Задать политику контекстного меню виджета равную Qt::ActionsContextMenu, чтобы контекстное меню отображало все связанные с виджетом действия. В качестве живого примера рекомендую изучить демку %QTDIR%/demos/sqlbrowser Тебе нужно изучить ConnectionWidget, он содержит QTreeWidget, являющися родственным для QListWidget |
|
|
asket |
21.8.2014, 13:22
Сообщение
#3
|
Студент Группа: Новичок Сообщений: 15 Регистрация: 18.1.2012 Пользователь №: 3139 Спасибо сказали: 0 раз(а) Репутация: 0 |
У меня вопрос как раз по контекстному меню на QTreeWidget.
В главном окне MainWindow в доке mainToolBar создал кнопку QToolButton, которая проваливается внутрь и держится в таком состоянии до повторного нажатия, в качестве CentralWidget я создал объект собственного класса производного от QTreeWidget, в нем контекстное меню, но почему же при выборе пункта в контекстном меню treeWidget вышеупомянутая кнопка возвращается в исходное состояние (отскакивает)? Фрагмент кодов: вставка кнопки QToolButton в mainToolBar
Этот код создает и вызывает контекстное меню
буду благодарен за любую помощь. |
|
|
asket |
21.8.2014, 14:08
Сообщение
#4
|
Студент Группа: Новичок Сообщений: 15 Регистрация: 18.1.2012 Пользователь №: 3139 Спасибо сказали: 0 раз(а) Репутация: 0 |
ответ на вопрос нашел. можно закрывать!
Надо было не кнопку создавать, а объект QAction, затем добавить этот элемент в toolBar, а там уже можно извращаться с кнопкой как угодно душе. |
|
|
Текстовая версия | Сейчас: 29.3.2024, 4:14 |