Qt5-Qt Creator进行多窗口编程

一、前言

以下总结基于Qt5.6.0,采用Qt creator进行开发。

二、Qt多窗口编程

1、示例思路

New Project(新工程)-->选择application(应用程序)-->选择默认的Qt widgets application(窗口小部件应用程序)-->选择工程路径和工程名-->基类选择QWidget即可,暂时不使用版本管理工具,然后直接完成即可。

然后鼠标右击工程文件夹,选择添加新文件,然后选择Qt-->Qt设计师界面类-->Dialog without Buttons(不要按钮的会话框)-->类名设置为myDlg,然后下一步病点击完成即可调到mydlg.ui界面中。

鼠标拖入一个Push Button,然后双击修改其文本为“进入主窗口”,在右侧修改其objectName为enterBtn。

然后在下面的signal & Slots Editor中“+”一个信号和槽,并将其关联,关联我们刚刚创建的enterBtn的clicked信号给myDlg,这样当我们点击该button时将信号发送给mydlg,然后mydlg退出进入主窗口。

主窗口也拖入一个push button,键入文本“弹出一个对话框”,然后右键push button选择转到槽,在该槽函数中显示一个新创建的dlg,该dlg和之前的dlg一样,也有一个“进入主窗口”的button,这样点击后本次dlg退出,然后显示主窗口,主窗口点击“弹出一个对话框”,如此周而复始。。。

 

示例代码

mydlg.h:

#ifndef MYDLG_H
#define MYDLG_H

#include <QDialog>

namespace Ui {
class myDlg;
}

class myDlg : public QDialog
{
    Q_OBJECT

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

private:
    Ui::myDlg *ui;
};

#endif // MYDLG_H

widget.h:

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include "mydlg.h"

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

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

private slots:
    void on_pushButton_clicked();

private:
    Ui::Widget *ui;
    myDlg myD2;
};

#endif // WIDGET_H

main.cpp:

#include "widget.h"
#include <QApplication>
#include "mydlg.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    myDlg myD;

    if(myD.exec() == QDialog::Accepted)
    {
        w.show();
        return a.exec();
    }
    else
        return 0;
}

widget.cpp:

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::on_pushButton_clicked()
{
    myD2.show();
}

 

最后

main.cpp中创建的dlg是激活进入主窗口的,后续的dlg则是由由于点击了主窗口中的push button而创建的,每次进入主窗口后dialog都会退出,这个循环的过程务必想清楚。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Qt Creator是一款用于Qt应用程序开发的集成开发环境(IDE)。它提供了一个直观、易于使用的界面,帮助开发人员更高效地构建Qt应用程序。 Doxygen是一种用于自动化代码文档生成的工具。它可以从代码中提取信息,并生成HTML、LaTeX、RTF等格式的文档。开发人员可以通过添加注释来描述代码的功能、类、函数等,Doxygen会根据这些注释生成相应的文档。 Qt Creator集成了Doxygen文档生成工具,使得我们可以方便地为我们的Qt项目添加文档注释,并生成相应的文档。在Qt Creator的帮助菜单中,我们可以找到Doxygen的相关选项和设置。 使用Qt Creator和Doxygen可以帮助开发人员轻松创建和维护项目的文档。通过添加适当的注释,我们可以清晰地描述我们的代码,并生成易于理解的文档。这对于代码的维护和项目的开发都非常重要。 另外,Qt Creator还提供了一些与文档相关的其他功能。例如,在代码编辑器中,我们可以通过鼠标悬停来查看注释以及和类、函数相关的信息。这样可以快速了解这些代码的功能和用法,提高开发效率。 总之,Qt Creator集成了Doxygen工具,使得代码的文档生成变得更加方便和直观。开发人员可以通过适当添加注释,生成高质量的文档,提高代码的可读性和项目的可维护性。 ### 回答2: Qt Creator是一款强大的跨平台集成开发环境(IDE),而Doxygen是一种文档生成工具。Qt Creator与Doxygen的组合可以帮助开发人员更好地管理和生成代码文档。 首先,Qt Creator提供了丰富的代码编辑功能,如自动补全、语法高亮、代码导航等,使开发人员在编写代码时更加高效。同时,Qt Creator还与Qt框架集成紧密,可以轻松地进行Qt程序的开发和调试。此外,Qt Creator还支持多种编程语言,包括C++、QML、Python等,满足了不同开发需求。 而Doxygen则是一种自动化文档生成工具。开发人员可以在代码中添加特定格式的注释,然后使用Doxygen生成代码文档。Doxygen支持多种输出格式,如HTML、LaTeX、XML等,可以根据需求生成不同形式的文档。它可以将代码中的注释、类、函数等信息转化为易读的文档,使其更加可理解和可维护。通过Doxygen生成的文档,开发人员可以更好地了解代码的结构和功能。 Qt Creator与Doxygen的结合可以提供更好的代码开发和文档管理体验。在Qt Creator中,开发人员可以轻松地编写代码,并在代码中添加Doxygen格式的注释。然后,使用Doxygen生成代码文档,将代码文档与代码开发整合起来。这样,开发人员可以更加方便地查看和理解代码的结构和功能,提高代码的可读性和可维护性。同时,通过文档生成工具的支持,开发人员还可以将生成的文档与团队成员分享,加强团队合作。 总结而言,Qt Creator与Doxygen的结合使得代码开发和文档管理更加高效和便捷。开发人员可以借助Qt Creator提供的丰富功能进行代码开发,并使用Doxygen生成易读的代码文档,提高代码的可读性和可维护性,促进团队合作。 ### 回答3: Qt Creator是一款跨平台的集成开发环境(IDE),用于开发Qt应用程序。而Doxygen是一款自动化文档生成工具,用于从源代码中生成可阅读的文档。那么,qtcreator-doxygen指的就是Qt Creator集成了Doxygen功能,可以直接在IDE中使用Doxygen来生成文档。 Qt Creator集成了Doxygen之后,用户可以通过简单的操作来生成项目的API文档。在编写Qt应用程序的过程中,开发者可以使用特定的注释格式来标记代码的各个部分,比如类、函数、成员变量等。然后,通过使用Doxygen相关的命令,结合Qt Creator的集成,可以快速生成项目的文档。 Qt Creator集成Doxygen的好处在于可以方便地在同一个开发环境中进行代码编写和文档生成。开发者无需切换到其他工具或命令行窗口,只需在Qt Creator中一键生成文档。这样不仅提高了效率,还可以减少因为切换工具而导致的操作失误。 另外,Qt Creator集成Doxygen还可以提供一些额外的功能,比如代码自动补全、快速跳转到定义等。这些功能可以提高开发者编写文档的效率和准确性。 总之,qtcreator-doxygen是指Qt Creator集成了Doxygen,使开发者可以方便地在IDE中生成项目的API文档。这样的集成不仅提高了开发效率,还能改善代码的可维护性和可读性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值