zoukankan      html  css  js  c++  java
  • QT mainwindow四件套

    最近在学习QT。下面总结一下mainwindow的设置步骤。

    使用的平台为vs2013+qt5.3.2+qt-vs-addin1.2.3

    1)安装软件

    首先安装vs2013,这个不多介绍。

    然后安装qt5.3.2和addin1.2.3。并设置相关环境。详细见http://tieba.baidu.com/p/3451630520?pid=61264366864#61264366864。

    2)建立qt工程项目

    具体省略。主要介绍相关代码。

    主要涉及4个函数

    CreateActions();
    CreateMenus();
    CreateToolBars();
    CreateStatusBar();

    具体实现代码例:

    //定义动作ACtion

    void MainWindow::CreateActions()
    {
    action_new_ = new QAction(QIcon(":/MainWindow/Resources/images/new.png"), tr("&New"), this);
    action_new_->setShortcut(QKeySequence::New);
    action_new_->setStatusTip(tr("Create a new file"));

    action_open_ = new QAction(QIcon(":/MainWindow/Resources/images/open.png"), tr("&Open..."), this);
    action_open_->setShortcuts(QKeySequence::Open);
    action_open_->setStatusTip(tr("Open an existing file"));
    connect(action_open_, SIGNAL(triggered()), imagewidget_, SLOT(Open()));

    }

    代码解释:QIcon(":/MainWindow/Resources/images/new.png")是读取图片的。注意双引号中的写法。 tr("&New")注意不要忘记&。setShortcut(QKeySequence::New)是设置快捷键,括号中的表示使用windows默认的快捷键。setStatusTip(tr("Create a new file"))表示状态栏显示的内容。

    //定义菜单栏Menu

    void MainWindow::CreateMenus()
    {
    menu_file_ = menuBar()->addMenu(tr("&File"));//创建了一个菜单叫File
    menu_file_->setStatusTip(tr("File menu"));//状态栏显示File menu

    //下面4个为菜单File中包含的Action
    menu_file_->addAction(action_new_);
    menu_file_->addAction(action_open_);
    menu_file_->addAction(action_save_);
    menu_file_->addAction(action_saveas_);

    }

    //定义工具栏ToolBar

    void MainWindow::CreateToolBars()
    {
    toolbar_file_ = addToolBar(tr("File"));//创建了一个工具栏,名称为File

    //下面3个为工具栏File包含的ACtion
    toolbar_file_->addAction(action_new_);
    toolbar_file_->addAction(action_open_);
    toolbar_file_->addAction(action_save_);

    }

    //激活状态栏

    void MainWindow::CreateStatusBar()
    {
    statusBar()->showMessage(tr("Ready"));
    }

    3)注意事项

    1、在.h文件中声明用到的变量自不用说了。

    2、工具栏中添加的各种图片表示应当在*.qrc文件中设置,不然没法显示。

    3、想不起来了,下次想起来在写吧。

  • 相关阅读:
    BZOJ 2142: 礼物 [Lucas定理]
    HDU 4349 Xiao Ming's Hope [Lucas定理 二进制]
    HDU 3944 DP? [Lucas定理 诡异的预处理]
    HDU 3037 Saving Beans [Lucas定理]
    HDU 4372 Count the Buildings [第一类斯特林数]
    整理一点与排列组合有关的问题[组合数 Stirling数 Catalan数]
    ZOJ 3557 & BZOJ 2982 combination[Lucas定理]
    BZOJ 3790: 神奇项链 [Manacher 贪心]
    CF 2015 ICL, Finals, Div. 1 J. Ceizenpok’s formula [Lucas定理]
    HDU 1573 X问题 [中国剩余定理]
  • 原文地址:https://www.cnblogs.com/hnuhui/p/4403530.html
Copyright © 2011-2022 走看看