我的Qt学习四-纯代码实现text文本(窗口界面)

一、新建项目

定义函数create

二、创建菜单栏

(一)实现界面

1.定义变量

private:
//定义
    QMenuBar *textMenuBar;
    QMenu *fileMenu;
    QMenu *editMenu;
    QMenu *aboutMenu;

2.添加头文件
此处可以前置声明
我的Qt学习四-纯代码实现text文本(窗口界面)_第1张图片
我的Qt学习四-纯代码实现text文本(窗口界面)_第2张图片
3.创建菜单栏代码

textMainWindow::textMainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    //创建菜单栏
    textMenuBar = this->menuBar();//得到当前的菜单栏
    fileMenu = new QMenu("文件(&F)");//在菜单栏里添加菜单file,&F-小伙伴
    textMenuBar->addMenu(fileMenu);//添加菜单

    editMenu = new QMenu("退出(&E)");//在菜单栏里添加菜单edit,&F-小伙伴
    textMenuBar->addMenu(editMenu);//添加菜单

    aboutMenu = new QMenu("关于(&A)");//在菜单栏里添加菜单file,&F-小伙伴
    textMenuBar->addMenu(aboutMenu);//添加菜单


    //创建工具栏
    //创建dock
    //创建中心部件
    //创建状态栏

}

(二)、添加动作

1.添加对象

//动作对象
    QAction *newAction;
    QAction *openAction;
    QAction *saveAction;
    QAction *saveasAction;//另存
    QAction *closeAction;

2.添加动作

//添加动作
    //文件菜单
    newAction = new QAction("新建(&N)");
    fileMenu->addAction(newAction);//file中添加
    openAction = new QAction("打开(&O)");
    fileMenu->addAction(openAction);//file中添加
    saveAction = new QAction("保存(&S)");
    fileMenu->addAction(saveAction);//file中添加
    saveasAction = new QAction("另存(&V)");
    fileMenu->addAction(saveasAction);//file中添加
    closeAction = new QAction("关闭(&C)");
    fileMenu->addAction(closeAction);//file中添加

    //编辑菜单
    copyAction = new QAction("关闭(&C)");
    editMenu->addAction(copyAction);//edit中添加

3.函数封装

void textMainWindow::createMenuBar()
{
    //创建菜单栏
    textMenuBar = this->menuBar();//得到当前的菜单栏

    fileMenu = new QMenu("文件(&F)");//在菜单栏里添加菜单file,&F-小伙伴
    textMenuBar->addMenu(fileMenu);//添加菜单

    editMenu = new QMenu("退出(&E)");//在菜单栏里添加菜单edit,&F-小伙伴
    textMenuBar->addMenu(editMenu);//添加菜单

    aboutMenu = new QMenu("关于(&A)");//在菜单栏里添加菜单file,&F-小伙伴
    textMenuBar->addMenu(aboutMenu);//添加菜单

    //添加动作
    //文件菜单
    newAction = new QAction("新建(&N)");
    openAction = new QAction("打开(&O)");
    saveAction = new QAction("保存(&S)");
    saveasAction = new QAction("另存(&V)");
    closeAction = new QAction("关闭(&C)");
    fileMenu->addAction(newAction);//file中添加
    fileMenu->addAction(openAction);//file中添加
    fileMenu->addAction(saveAction);//file中添加
    fileMenu->addAction(saveasAction);//file中添加
    fileMenu->addAction(closeAction);//file中添加

    //编辑菜单
    copyAction = new QAction("复制(&P)");
    editMenu->addAction(copyAction);//edit中添加
}

结果(第一行)
在这里插入图片描述

三、创建工具栏

定义:

	QToolBar *fileToolBar;
    QToolBar *editToolBar;

函数:
定义的toolbar对象中调用上文定义的动作

void textMainWindow::createToolBar()
{
    fileToolBar = new QToolBar("文件工具栏");
    this->addToolBar(fileToolBar);
    fileToolBar->addAction(newAction);

    editToolBar = this->addToolBar("编辑工具栏");
    editToolBar->addAction(copyAction);
}

四、界面优化:

添加图标文件(资源机制)
1.添加资源文件我的Qt学习四-纯代码实现text文本(窗口界面)_第3张图片
2.添加前缀和路径
我的Qt学习四-纯代码实现text文本(窗口界面)_第4张图片
3.使用:

openAction = new QAction(QIcon(":/new/prefix1/images/123.png"),"打开(&O)");

4.结果:
我的Qt学习四-纯代码实现text文本(窗口界面)_第5张图片

五、中心部件

1.添加新的ui界面(随意设计)作为中心部件
我的Qt学习四-纯代码实现text文本(窗口界面)_第6张图片
2.使用(函数)

void textMainWindow::createCentralWidget()
{
    Form *widget = new Form(this);
    this->setCentralWidget(widget);
}

3.结果
我的Qt学习四-纯代码实现text文本(窗口界面)_第7张图片

六、状态栏

1.直接调用函数showMessage()

void textMainWindow::createStatusBar()
{
    this->statusBar()->showMessage("这是fort的编辑器!!",4000);
}

七、头文件的调用
补代码如下:
textmainwindow.h

#include 
#include "form.h"
class QMenuBar;//前置声明
class QMenu;
class QToolBar;
class QAction;
class QStatusBar;
class QWidget;

textmainwindow.cpp

#include "textmainwindow.h"
#include 
#include 
#include 
#include
#include 
#include 

以上代码关联没有实现,待二补充

你可能感兴趣的:(我的Qt学习四-纯代码实现text文本(窗口界面))