C ++ Qt任务栏图标菜单操作
问题描述:
我在qt创作者中获得了这段代码;
I got this code in qt creator;
int main( int argc, char* argv[] )
{
QApplication oApp( argc, argv );
QAction *action1;
QMenu menu;
QSystemTrayIcon TrayIcon( QIcon("favicon.ico") );
TrayIcon.show();
action1= new QAction("action1", NULL);
action1->setStatusTip("Create a new file");
menu.addAction(action1);
TrayIcon.setContextMenu(&menu);
return oApp.exec();
}
但是当我打开菜单并在action1上按它执行功能时,我该怎么做呢?
but how can i make that when i open the menu and press on action1 that it execute a function?
非常感谢!
答
创建一个新类(从QObject派生),其插槽名为myslot,然后:
Create new class (derived from QObject) with a slot called, e.g. myslot, then:
class MyClass : public QObject {
Q_OBJECT
...
public slots:
void mySlot();
};
myObject = new MyClass();
connect(action1, SIGNAL(triggered()), myObject, SLOT(mySlot()));