zoukankan      html  css  js  c++  java
  • 6.添加动作

    在主窗口基础之上,添加菜单和工具栏等的动作。
    // !!! Qt 5
    // ========== mainwindow.h
    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
     
    #include <QMainWindow>
     
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    public:
        MainWindow(QWidget *parent = 0);
        ~MainWindow();
     
    private:
        void open();
     
        QAction *openAction;
    };
     
    #endif // MAINWINDOW_H
     
    // ========== mainwindow.cpp
    #include <QAction>
    #include <QMenuBar>
    #include <QMessageBox>
    #include <QStatusBar>
    #include <QToolBar>
     
    #include "mainwindow.h"
     
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent)
    {
        setWindowTitle(tr("Main Window"));
     
        openAction = new QAction(QIcon(":/images/doc-open"), tr("&Open..."), this);
        openAction->setShortcuts(QKeySequence::Open);
        openAction->setStatusTip(tr("Open an existing file"));
        connect(openAction, &QAction::triggered, this, &MainWindow::open);
     
        QMenu *file = menuBar()->addMenu(tr("&File"));
        file->addAction(openAction);
     
        QToolBar *toolBar = addToolBar(tr("&File"));
        toolBar->addAction(openAction);
     
        statusBar() ;
    }
     
    MainWindow::~MainWindow()
    {
    }
     
    void MainWindow::open()
    {
        QMessageBox::information(this, tr("Information"), tr("Open"));
    }
    
    
    int main(int argc, char *argv[])
    {
        QApplication app(argc, argv);
     
        MainWindow win;
        win.show();
     
        return app.exec();
    }

  • 相关阅读:
    EF关联
    nopcommerce v3.9中文包
    Android Activity切换与Activity间数据交互
    C#多线程的用法9-Semaphore
    C#多线程的用法8-线程间的协作AutoResetEvent
    C#多线程的用法7-线程间的协作ManualResetEvent
    C#多线程的用法6-线程间的协作Mutex
    C#多线程的用法5-线程间的协作Monitor
    C#多线程的用法4-线程间的协作lock快捷方式
    C#多线程的用法3-线程间的协作Join
  • 原文地址:https://www.cnblogs.com/LyndonMario/p/9326270.html
Copyright © 2011-2022 走看看