头文件
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QAction>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void open();
private:
QAction *openACtion;
};
#endif // MAINWINDOW_H
源文件
main.cpp
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
mainwindow.cpp
#include "mainwindow.h"
#include <QAction>
#include <QMenu>
#include <QMenuBar>
#include <QKeySequence>
#include <QToolBar>
#include <QMessageBox>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
openACtion = new QAction(tr("&Open"), this);
openACtion->setShortcut(QKeySequence::Open);
openACtion->setStatusTip(tr("Open a file"));
openACtion->setIcon(QIcon(":/ask.png")); //直接将图片放在根目录了,没有新建文件夹
connect(openACtion, SIGNAL(triggered()), this, SLOT(open()));
QMenu *file = menuBar()->addMenu(tr("&File"));
file->addAction(openACtion);
QToolBar *toolBar = addToolBar(tr("&File"));
toolBar->addAction(openACtion);
}
void MainWindow::open()
{
QMessageBox::information(NULL, tr("Open"), tr("Open a file"));
}
MainWindow::~MainWindow()
{
}
这是添加的图标