【Qt】窗口和对话框区别、主窗口和二级窗口区别、QMainWindow和QDialog区别

窗口和对话框(Window and Dialog Widgets)

未嵌入在父界面中的界面称为窗口。(通常,窗口具有边框和标题栏,尽管也可以使用合适的窗口标志创建没有此类标志的窗口)。

在Qt中,QMainWindowQDialog的各个子类是最常见的窗口类型。

在应用程序中,窗口提供构建用户界面的屏幕区域。Windows 在视觉上将应用程序彼此分开,并且通常提供窗口修饰,允许用户根据自己的喜好调整应用程序的大小和位置。Windows通常集成到桌面环境中,并在某种程度上由桌面环境提供的窗口管理系统管理。例如,选中应用程序的窗口会显示在任务栏中。

总结

QMainWindow和QDialog都是window,不是普通界面。

主窗口和二级窗口(Primary and Secondary Windows)

任何没有父亲的QWidget都会成为一个窗口,并且在大多数平台上都会列在桌面的任务栏中。一个应用程序通常只需要一个窗口,即主窗口。

此外,具有父亲的 QWidget 可以通过设置 Qt::Window 标志成为窗口。窗口管理系统通常会将此类二级窗口堆叠在其各自的父窗口之上,并且没有自己的任务栏条目。

QMainWindow 类在其构造函数中设置Qt::Window标志,因为它被设计用作窗口并提供子界面不需要的功能。

总结
QmainWindow是主窗口,QDialog其实是二级窗口,应该就是通过继承QWidget 并设置 Qt::Window 标志实现。

Main Windows and Dialogs(主窗口和对话框)

应用程序主窗口通过子类化 QMainWindow 提供用于构建应用程序主要用户界面的框架。QMainWindow有自己的布局,可以在其中添加菜单栏、工具栏、可停靠的小部件和状态栏。中心区域可以被任何类型的QWidget占据。

对话框窗口被用作二级窗口,为用户提供选项和选择。对话框是通过子类化 QDialog 并使用小部件和布局来实现用户界面的创建。此外,Qt还提供了许多现成的标准对话框,可用于文件或字体选择等标准任务。

总结
QmainWindow是主窗口,QDialog其实是二级窗口

相关推荐
苏州IT威翰德3 分钟前
苏州IT基础架构IQ/OQ/PQ确认服务 | 服务器网络验证
开发语言·php
Xin_ye1008617 分钟前
C# 零基础到精通教程 - WPF 专题二:数据绑定与 MVVM
开发语言·c#·wpf
我是一颗柠檬22 分钟前
【Java后端技术亮点】Feed流三级缓存设计,从10秒到100毫秒的优化实战
java·开发语言·后端·缓存
兆。23 分钟前
LangChain文档处理集成指南:面向知识管理开发者
开发语言·langchain·c#
Brilliantwxx24 分钟前
【算法从零到千】【1-7】 双指针算法
开发语言·c++·笔记·算法·leetcode·推荐算法
雪的季节25 分钟前
Qt 高性能绘图的核心原理
qt
Irissgwe27 分钟前
一、Qt 概述
c++·qt·gui·qt creator
超梦dasgg28 分钟前
Java 正则表达式 完整详解(语法 + 核心类 + 常用方法 + 实战案例)
java·开发语言·正则表达式
方也_arkling29 分钟前
【Java-Day17】API篇-BigInteger和BigDecimal
java·开发语言
星辰_mya31 分钟前
ThreadLocal之微服务链路追踪
java·开发语言·前端