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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QMenu  (Прочитано 2981 раз)
Firefox
Гость
« : Сентябрь 09, 2013, 10:37 »

Здравствуйте. Подскажите, пожалуйста,как мне на меню верхнего уровня сделать действие. мне надо чтоб по нажатию на верхнюю надпись меню открывалась форма другая. mousePressEvent не срабатывает, пробовала с помощью него. заранее спасибо.
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Сентябрь 09, 2013, 10:53 »

Что такое меню верхнего уровня и что такое верхняя надпись Непонимающий
Записан

Qt 5.11/4.8.7 (X11/Win)
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #2 : Сентябрь 09, 2013, 11:30 »

коннекться с menu->menuAction()
Записан

Изучением 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
Firefox
Гость
« Ответ #3 : Сентябрь 09, 2013, 12:57 »

Меню верхнего уровня это то что обычно называется "Файл", "Правка", "Вид"......
сделала следующее но не заходит в слот все равно:
Код:
QAction *act_arhivAt=ui->ARHIV_AT->menuAction();
 connect(act_arhivAt,SIGNAL(triggered()),SLOT(slotArhivAT()));


void MainWindow::slotArhivAT()
{
    Arh_at->show();
}

private slots:
slotArhivATGS();

Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #4 : Сентябрь 09, 2013, 15:47 »

Меню верхнего уровня это то что обычно называется "Файл", "Правка", "Вид"......
Обычно это называется "menu bar" и получается через:
Код
C++ (Qt)
QMenuBar * QMainWindow::menuBar () const
Записан

Qt 5.11/4.8.7 (X11/Win)
Firefox
Гость
« Ответ #5 : Сентябрь 11, 2013, 10:04 »

Извините, но не понятно все равно. я создавала в креаторе меню и там это класс QMenu. и к нему я могу обратиться как ui->ARHIV_AT, но как подключить к нему действие или слот, который отрабатывает по клику на него не понятно. срабатывает только если в конекте сигнал прописать hovered(). остальные сигналы не срабатывают.
Код:
connect(ui->ARHIV_AT,SIGNAL(hovered()),....
но мне этот сигнал не нужен
« Последнее редактирование: Сентябрь 12, 2013, 13:02 от Firefox » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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