将 QAction 连接到 Qt5 中的非成员 qt 函数
Connect QAction to nonmember-qt function in Qt5
我想向我的 TrayIcon 添加一个按钮(在 Qt5.5 中)。 (我正在使用 QMenu、QAction)当我点击它时,我想调用 public 非 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);
}
在 Qt 5 中,您可以连接到常规成员函数、自由函数或 lambda 表达式,但必须使用 new syntax
connect(ExampleAction, &QAction::triggered, exfunction);
我想向我的 TrayIcon 添加一个按钮(在 Qt5.5 中)。 (我正在使用 QMenu、QAction)当我点击它时,我想调用 public 非 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);
}
在 Qt 5 中,您可以连接到常规成员函数、自由函数或 lambda 表达式,但必须使用 new syntax
connect(ExampleAction, &QAction::triggered, exfunction);