我想为我的TrayIcon添加一个按钮(在Qt5.5中)。 (我正在使用QMenu,QAction)当我点击它时,我想调用公共的非Qt函数。如何连接到此SIGNAL?
mainwindow.h:
private:
void tray();
QMenu *trayIconMenu;
QAction *ExampleAction;
mainwindow.cpp:
void exfunction()
{
}
void MainWindow::tray()
{
ExampleAction = new QAction(tr("Sample Text"), this);
connect(ExampleAction,SIGNAL(triggered()), exfunction()); //How to propertly connect it?
trayIconMenu = new QMenu(this);
trayIconMenu->addAction(ExampleAction);
}
答案 0 :(得分:7)
在Qt 5中,您可以连接到常规成员函数,自由函数或lambda表达式,但必须使用new syntax
connect(ExampleAction, &QAction::triggered, exfunction);