qt的窗口

 

 

1.窗口、字部件以及窗口类型(记得不牢固的)

(1)#include<QtWidget>

  Widgets是在Qt中创建用户界面的主要元素。 Widgets可以显示数据和状态信息,接收用户输入,并为应该组合在一起的其他小部件提供容器。 未嵌入到父窗口小部件中的窗口小部件称为窗口。

  

 

 

 

 (2)对话框QDialog()

  1.模态化的窗口:     

复制代码
#include "mywindow.h"
#include "ui_mywindow.h"
#include <QDialog>

MyWindow::MyWindow(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::MyWindow)
{
    ui->setupUi(this);
    QDialog dialog(this);//副窗口
    dialog.exec();//执行窗口
}

MyWindow::~MyWindow()
{
    delete ui;
}
复制代码

  2.非模态化的窗口

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "mywindow.h"
#include "ui_mywindow.h"
#include <QDialog>
 
MyWindow::MyWindow(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::MyWindow)
{
    ui->setupUi(this);
    QDialog *dialog=new QDialog(this);<br>   dialog->setModal(true);//堵塞函数可以起到窗口执行的先后顺序
    dialog->show();
    //QDialog dialog(this);
    //dialog.exec();
}
 
MyWindow::~MyWindow()
{
    delete ui;
}

(3)窗口的切换

  1.认识信号和槽 

1
2
3
4
5
6
void MyWidget::on_showChildButton_clicked()//特有的命名方式
{
    QDialog * dialog=new QDialog(this);
 
    dialog->show();
};

  2.自定义对话框

   先在设计UI页面中加2个按钮

   

 

  左边的右击鼠标进入槽点击clicked()之后进入定义中

复制代码
void MyWidget::on_pushButton_clicked()
{
    close();
    MyDialog dlg;
    if(dlg.exec()==QDialog::Accepted)
    {
        show();
    }
}
复制代码

  右边的直接按f4键进入设计见面左边选择clicked()右边选择close();

  在main()函数中的设计

复制代码
#include "mywidget.h"
#include <QTabWidget>
#include <QApplication>
#include "mydialog.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MyWidget w;
    MyDialog dialog;
    if(dialog.exec()==QDialog::Accepted)
    {
         w.show();
         return a.exec();
    }
    else
        return 0;
}
复制代码

 

posted @   术术子  阅读(79)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示