您的位置:首页 > 编程语言 > Qt开发

QT学习之路(2):添加动作

2015-12-20 18:47 417 查看

下面的代码实现了一个主窗口以及相应的菜单栏,工具栏和状态栏.需要注意要先添加图片资源.

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
Q_OBJECT

public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();

private:
void open();
QAction *openAction;
Ui::MainWindow *ui;//这是用来设置界面格式的,具体暂时不懂
};

#endif // MAINWINDOW_H


//mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QAction"
#include "QMenuBar"
#include "QToolBar"
#include <QMessageBox>
//parent是父对象
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),  ui(new Ui::MainWindow)

{
ui->setupUi(this);//设置显示出来的格式
setWindowTitle(("Main Window"));//设置窗口的名字
openAction = new QAction(QIcon(":/image/rose"),tr("&Open..."),this);//创建一个QAction对象
openAction->setShortcut(QKeySequence::Open);//定义的该对象的快捷键
openAction->setStatusTip(tr("Open an existing file"));//实现鼠标滑过这个action在状态栏的显示
connect(openAction,&QAction::triggered,this,&MainWindow::open);
auto file = menuBar()->addMenu(tr("&File"));//创建菜单栏并且向菜单栏添加一个菜单项
file->addAction(openAction);//向这个菜单项添加action对象
auto toolbar =addToolBar(tr("&File"));
toolbar->addAction(openAction);
statusBar() ;//创建状态栏
}

MainWindow::~MainWindow()
{
delete ui;
delete openAction;//释放资源
}
void MainWindow::open()
{
QMessageBox::information(this, tr("Information"), tr("Open"));
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: