Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
| Гость_mor_* |
15.2.2008, 13:07
Сообщение
#1
|
|
Гости |
Поиском пользовался не нашел, гуглил, тот же результат, как такое сделать?
|
|
|
|
|
Litkevich Yuriy |
15.2.2008, 16:21
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
методы hide() и show() применимы ко всем виджетам, пробывал?
|
|
|
|
|
DEADHUNT |
21.7.2009, 1:31
Сообщение
#3
|
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 430 Регистрация: 15.4.2009 Пользователь №: 686 Спасибо сказали: 26 раз(а) Репутация: 2
|
visible = false, но меню всеровно показывается. есть ещё какие нибудь варианты?
|
|
|
|
|
Nicolay Sidorov |
23.7.2009, 19:45
Сообщение
#4
|
|
Новичок Группа: Новичок Сообщений: 1 Регистрация: 23.7.2009 Пользователь №: 936 Спасибо сказали: 0 раз(а) Репутация: 0
|
->setVisible(false)
->setHidden(true) ->hide() - ничего из этого не работает для QMenu. Остается использовать только setEnabled(false) или setDisabled(true), на большее, видимо, рассчитывать смысла нет. Способ скрытия QMenu найден: Надо только подсчитать порядковый номер нужного элемента QMenu (среди всех остальных, находящихся в menuBar'e): //QMenuBar* menuBar; menuBar->actions()[#]->setVisible(false); // где # - номер нужного элемента |
|
|
|
|
Litkevich Yuriy |
23.7.2009, 19:51
Сообщение
#5
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(Nicolay Sidorov @ 23.7.2009, 23:45) Link Надо только подсчитать порядковый номер нужного элемента QMenu а зачем считать? тебе должен быть известен указатель на действие (QAction).
|
|
|
|
|
SABROG |
23.7.2009, 20:08
Сообщение
#6
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34
|
Или найти по имени объекта:
|
|
|
|
|
kwisp |
24.7.2009, 8:08
Сообщение
#7
|
|
астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23
|
QAction наследник QObject так что можно и стандартные функции юзать, кстати оч удобно так ка можно регулярные выражения использовать.
QList<T> QObject::findChildren ( const QString & name = QString() ) const QList<T> QObject::findChildren ( const QRegExp & regExp ) const |
|
|
|
|
SABROG |
24.7.2009, 8:17
Сообщение
#8
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34
|
Цитата(kwisp @ 24.7.2009, 9:08) Link QAction наследник QObject так что можно и стандартные функции юзать, кстати оч удобно так ка можно регулярные выражения использовать. QList<T> QObject::findChildren ( const QString & name = QString() ) const QList<T> QObject::findChildren ( const QRegExp & regExp ) const Тут то ты и попался в ловушку Цитата The ownership of action is not transferred to this QWidget.
|
|
|
|
|
kwisp |
24.7.2009, 8:21
Сообщение
#9
|
|
астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23
|
SABROG,
а у меня хозяин и все работает. правда у меня action`Ы добавляются в один тулбар. ты привел цитату из функции addWidget. а если посомотреть на конструкторы QAction там есть QObject* parent. если знаешь кого сделал хозяином всех действий думаю можно ими рулить. |
|
|
|
|
SABROG |
24.7.2009, 8:25
Сообщение
#10
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34
|
Цитата(kwisp @ 24.7.2009, 9:21) Link ты привел цитату из функции addWidget. void QWidget::addAction ( QAction * action ) parent может быть нулем или его родителем может быть QActionGroup, или экшен может быть использован в нескольких местах. |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 22.12.2025, 3:45 |