C ++ Qt任务栏图标菜单操作

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()));