首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

python GUI库图形界面开发之PyQt5QMainWindow, QWidget以及QDialog区别和选择

在QtQMainWindow和和不同QDialog子类是最普通顶级窗口。 一个没有父窗口部件窗口部件一直是顶级窗口部件。 3....如何选择QMainWindow,QWidget,QDialog 大致理解是: QMainWindow是完整窗体,在window上可以加入widget,适合于完整项目,因为它封装了toolbar,statusbar...QDialog派生自QWidget,是顶级窗口,功能也最基础。 所以功能上QMainWindow QWidget QDialog 4....在PyQt初始化类区别 QMainWindow from test.py import Ui_MainWindow #通过pyuic产生test.py中生成类 class mywindow(QMainWindow...__init__(parent) self.setupUi(self) 本文主要分析介绍了python GUI库图形界面开发PyQt5QMainWindow, QWidget以及QDialog

2.9K11

PySide6 GUI 编程(1): 环境准备与示例代码

宏观上认识下 PySide6 类 QWidget类 在Qt框架,QWidget、QMainWindowQDialog是构建GUI应用程序基础组件,它们都是QWidget类不同子类,各自有不同用途和特点...用途:QMainWindow 提供了主窗口基本结构,包括菜单栏、工具栏、状态栏和中心部件(central widget)。它通常用作应用程序主窗口。...组合使用:在Qt应用程序,通常首先创建一个 QMainWindow 作为主窗口,然后在其中嵌入或弹出 QDialog 对话框,以处理用户交互。...功能区分:虽然 QMainWindowQDialog 都可以包含其他控件和布局,但它们在应用程序角色和行为不同。...QMainWindow 作为应用程序主要工作区,而 QDialog 用于特定交互任务。

26132
您找到你想要的搜索结果了吗?
是的
没有找到

QT Creator 快速入门教程 读书笔记(二)

一 窗口部件 基础窗口部件QWidget类是所有用户界面对象基类,窗口和控件都是直接或间接继承自 QWidget,下面我们来看一个很简单例子: 窗口部件(Widget)简称部件,是QT建立界面的主要元素...,QT把没有嵌入到其他部件部件成为窗口,一般窗口都有边框,标题栏,窗口是指程序整体界面,可以包含标题栏、菜单栏、工具栏、关闭按钮、最小化按钮、最大化按钮等;控件是指按钮、复选框、文本框、表格、进度条等这些组成程序基本元素...0表示Qt::Widget,默认类型。 QMainWindow、QWidget、QDialog 三个类就是用来创建窗口,可以直接使用也可以继承后再使用。...QMainWindow 窗口可以包含菜单栏、工具栏、状态栏、标题栏等,是最常见窗口形式,可以作为GUI程序主窗口。如下图所示: QDialog 是对话框窗口基类。...QDialog 没有菜单栏、工具栏、状态栏等,如下所示: 如果是主窗口,就使用 QMainWindow;如果是对话框,就是用 QDialog;如果不确定,或有可能作为顶级窗口,也有可能嵌入到其他窗口中

1.3K70

【QT】QT窗口部件

QT窗口部件 默认部件基类 QT提供默认部件基类包括QMainWindow、QWidget、和QDialog,这三个部件基类也是用最多。...QMainWindow是带有菜单栏、工具栏、状态栏主窗口类,它有自己单独布局。布局有一个中心区域,通常是标准QT部件,也可以是定制部件,且必须有一个中心小部件。...---- QDialog是各种对话框基类,其继承自QWidget,对话框有两种表现形态:形态对话框、非模态对话框。模态对话框就是一个阻塞同一应用程序其它可视窗口输入对话框。...用户必须完成当前对话框交互操作并且关闭窗口后才能操作当前音乐程序其它窗口。模式对话框有它们自己本地事件循环。exec()方法可使窗口以模态方式运行。...当用户关闭这个对话框,exec()将提供一个可用返回值并且这时流程控制继续调用exec()地方进行。

1.2K20

【QT】Qt 窗口 (QMainWindow)

QMainWindow 包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个浮动窗口(铆接部件)(dock widgets)、⼀个状态栏(status bar) 和⼀个 中心部件(...如下图为 QMainwindow 各组件所处位置: 一、菜单栏 Qt 中的菜单栏是通过 QMenuBar 这个类来实现。⼀个主窗口最多只有⼀个菜单栏。位于主窗口顶部、主窗⼝标题栏下面。...菜单栏包含菜单. 菜单包含菜单项. 1. 创建菜单栏并添加菜单 菜单栏创建可以借助于 QMainWindow类 提供 menuBar() 函数来实现。...设置停靠位置 浮动窗⼝是位于部件周围。可以通过 QDockWidget类 中提供 setAllowedAreas() 函数设置其允许停靠位置。...QFontDialog,⽤于提供选择字体对话框部件

13010

PyQt5-基本控件| 主窗口类型、创建以及代码如何实现?

1 主窗口类型PyQt窗口部件QMainWindow,QWidget,QDialog。...窗口分类 说明 QMainWindow包含菜单栏,工具栏,状态栏,标题栏,是最常见窗口形式QDialog对话窗口基类,一般用于执行一些短期任务,无上述几个栏QWidget 不确定窗口用途就使用Widget...,可作为顶层窗口(QMainWindow),可以嵌入到其他窗口2 QMainWindow2.1 常用方法QMainWindow就是一个顶层窗口,它可以包含很多界面元素,如菜单栏、工具栏、状态栏、子窗口等等...addToolBar(self, str) -> QToolBar """ return QToolBar2.1.2 centralWidget返回窗口中心控件...self.btn.clicked.connect(self.showDialog) self.show() def showDialog(self): dialog = QDialog

36650

QT控件部分知识点整理

QT工具栏和菜单栏 QMainWindow 菜单栏创建演示: 工具栏创建演示: 状态栏创建演示: 铆接部件(浮动窗口)创建演示: 中心部件创建演示: 资源文件添加 模态和非模态对话框 消息对话框...颜色对话框 文件对话框 字体对话框 QMainWindow 菜单栏在为空状态下,什么都不会显示 菜单栏创建演示: //菜单栏创建---菜单栏最多只能有一个 QMenuBar*b=...设置浮动 toolBar->setFloatable(false); //设置移动:总开关 toolBar->setMovable(false); //工具栏可以设置内容...(浮动窗口)创建演示: 放置区域参数: //铆接部件(浮动窗口)可以有多个 QDockWidget* dockWidget=new QDockWidget("浮动",this);...dlg2(this); 这里放在匿名函数对象,生命周期只有一行,对话框一闪而过,建议在堆区创建 QDialog* dlg2=new QDialog(this);//重复点击关闭窗口,会重复再堆区创建对象

1.1K20

PyQT模块、类、控件介绍

此模块一般用在网络地图定位系统。 Enginio模块 用于构建客户端应用程序库,在运行时访问Qt Cloud 服务器托管应用程序。...Qt模块 将上面模块类综合到一个单一模块。这样做好处是你不用担心哪个模块包含了哪个特定类;坏处是加载到整个Qt框架,从而增加了应用程序内存占用。...QMainWindow类 提供一个有菜单栏、锚接窗口(如工具栏)和状态栏主应用程序窗口。 QWidget类 所有用户界面对象基类。...QDialog类和QFrame类继承自QWidget类,这两个类有自己子类系统(Sub-Class System)。 QDialog类 最普通顶级窗口。...可以在绘图设备上显示图像,通常放在QLabel或QPushButton类 Qdialog控件 对话框窗口基类 QT Designer控件 控件名称 说明 控件名称 说明 Layouts——布局管理

44531

【QT】QT事件处理

事件处理 QT,事件作为一个对象,继承自QEvent类,常见有键盘事件QKeyEvent、鼠标事件QMouseEvent和定时器事件QTimerEvent等。...QT,任何QObject子类示例都可以接收和处理事件。实际编程通常实现部件paintEvent()、mousePressEvent()等事件处理函数来处理特定部件特定事件。...每个程序main函数最后都会调用QApplication类exec()函数,它会使QT应用程序进入到事件循环,使应用程序在运行时候接收各种事件。...一旦有事件发生,QT便会构造一个相应QEvent子类对象来表示它,然后将它传递给QObject对象或子对象。 ---- 鼠标事件 对鼠标实现进行重写来实现你想要达到功能。... namespace Ui { class MouseEvent; } class MouseEvent : public QMainWindow { Q_OBJECT

1.5K10

CC++ Qt 自定义Dialog对话框组件应用

在上一篇博文 《C/C++ Qt 标准Dialog对话框组件应用》 我给大家演示了如何使用Qt内置标准对话框组件实现基本数据输入功能。...目前自定义对话框与主窗体通信有两种方式,一种是通过函数实现通信,另一种则是通过信号实现通信,我们以通过函数通信为基础,解释一下如何实现跨窗体通信。...第二个 SetValue() 用来接收传入参数,并将此参数设置到自身窗体编辑框内。...加载,读取出主窗体编辑框内值并设置到子窗体内,当用户按下QDialog::Accepted时则是获取子窗体内值,并将其设置到父窗体编辑框内,主函数代码如下所示....,并提供一个发送到MainWindow按钮.

66810

CC++ Qt 自定义Dialog对话框组件应用

在上一篇博文 《C/C++ Qt 标准Dialog对话框组件应用》 我给大家演示了如何使用Qt内置标准对话框组件实现基本数据输入功能。...目前自定义对话框与主窗体通信有两种方式,一种是通过函数实现通信,另一种则是通过信号实现通信,我们以通过函数通信为基础,解释一下如何实现跨窗体通信。...第二个 SetValue() 用来接收传入参数,并将此参数设置到自身窗体编辑框内。...加载,读取出主窗体编辑框内值并设置到子窗体内,当用户按下QDialog::Accepted时则是获取子窗体内值,并将其设置到父窗体编辑框内,主函数代码如下所示....,并提供一个发送到MainWindow按钮.

61220

外部访问KubernetesPod

本文转载自jimmysong博客,可点击文末阅读原文查看 本文主要讲解访问kubernetesPod和Serivce几种方式,包括如下几种: hostNetwork hostPort NodePort...如果在Pod中使用hostNetwork:true配置的话,在这种pod运行应用程序可以直接看到pod所在宿主机网络接口。...这种Pod网络模式有一个用处就是可以将网络插件包装在Pod然后部署在每个宿主机上,这样该Pod就可以控制该宿主机上所有网络。 ---- hostPort 这是一种直接定义Pod网络方式。...Kubernetesservice默认情况下都是使用ClusterIP这种类型,这样service会产生一个ClusterIP,这个IP只能在集群内部访问。...控制器守护程序Kubernetes接收所需Ingress配置。它会生成一个nginx或HAProxy配置文件,并重新启动负载平衡器进程以使更改生效。

2.8K20

Qt入门系列(二)

文章首发在博主知乎 ---- 作业1 需求:点击按钮打开,弹出一个新菜单,单击按钮关闭,关闭新开菜单 步骤: 1.新建一个QMainWindow项目 2.在1基础上新建一个类QMainWIndow2...QMainWindow 4.1 菜单栏和工具栏 Ubuntu下不显示菜单栏解决办法: blog.csdn.net/z95295740 解决Ubuntu下Qt不能输入中文方法: blog.csdn.net...设置后期停靠区域,只允许上下停靠 dockWider->setAllowedAreas(Qt::BottomDockWidgetArea | Qt::TopDockWidgetArea); //设置中心部件...此时右键res.qrc->open in editor->添加前缀->添加文件(全选1图片打开,此时全部加载进去)->点击编译 4.编辑代码 //使用添加资源文件 “: + 前缀名 +文件名”...dlg2(this);//栈上自动销毁 dlg2.show(); QDialog *dlg3=new QDialog(this); dlg3->resize

1.9K30

PyQt5主窗口QMainWindow简介

看过上一篇我们知道,在PyQt5了,所有的控件都是继承自。在桌面应用当中,我们常用软件都会包含一个主窗口。主窗口就是承载所有控件一个窗体。...在PyQt5当中常用主窗体有两种QMainWindowQDialog。当然这两个也是继承自QWidget类。...QDialog是对话框窗口基类对话框,主要用来执行短期任务或者与用户进行互动,它可以是模态,也可以是非模态。对话框没有菜单栏、工具栏、状态栏。...QWidget继承关系图 对于主窗口选择如果包含状态栏、工具栏、菜单栏等可以使用QMainWindow。如果只是对话框形式不包含以上几种就可以使用QDialog。...主窗口使用 在这里我们先看一下最常用主窗口类QMainWindow,它为用户提供了一个应用程序框架,包含有自己布局,可以在布局添加控件。 看一下下面的这张图片就是QMainWindow

3.6K31

『PyQt5-基础篇』| 01 简单基础了解

图片2.1 PyQt5主要模块以下是主要模块,可以官方了解到其它内容:模块说明 QtCore核心非GUI功能,被用于处理程序涉及时间、文件、目录、数据类型、文本流、链接、QMimeData、线程或进程等对象...网络编程类库,提供TCP/IP及UDPC/S代码集合QtPositioning 获取位置信息,比如卫星、无线网、文字信息等Enginio构建客户端应用程序库,运行时访问Qt Cloud 服务器托管应用程序...用户界面对象基类QFrame有框架窗口控件基类QMainWindow有菜单栏、锚接窗口(如工具栏)和状态栏主应用程序窗口QDialog最普通顶级窗口 2.3 重要类继承关系PyQt 5重要类及其继承关系...,用于弹出列表QMenuBar横向菜单栏 QStatusBar适合呈现状态信息水平条,通常放在QMainWindow底部QToolBar工具栏,可以包含多个命令按钮,通常放在QMainWindow顶部...QListView显示和控制可选多选列表,可以设置ListMode或IconModeQPixmap在绘图设备上显示图像,通常放在QLabel或QPushButton类 Qdialog对话框窗口基类

32160

Qt Designer基本控件介绍——Display Widgets(显示小部件

selectedText():返回所选择字符 信号: linkActiveted:当单击标签超链接,希望在新窗口打开这个超链接时,setOpenExternalLinks特性必须设置为True...setCacheMode(): 设置缓存模式,这个属性控制视图哪一部分存储在缓存,QGraphicsView可以预存一些内容在QPixmap,然后被绘制到视口上,这样做目的是加速整体区域重绘速度...setViewportUpdateMode(): 设置视口更新模式,QGraphicsView 使用这个属性来决定当场景改变或者暴露时候如何刷新场景区域,通常不需要修改这个属性,但是在有些情况下做这个工作可以改进绘图性能...setTransformationAnchor(): 设置视口变换锚点,这个属性控制当视图做变换时应该如何摆放场景位置。默认情况是在变换时保持视图中心点不变。...,可以在PyQt和Qt应用显示图形(包括2D和3D图形),在Designer,该部件没有任何独有属性,都是继承QWidget属性。

7.8K20

初学Qt(一)

如果是一个小白,那么该如何学习Qt呢?接下来我自己学习经历总结一下,希望对初学Qt同志能有一点儿帮助。...以我们常用应用程序和窗体程序为例,必须要继承三大基类一个。他们分别是QMainWindow、QWidget、QDialog。...三、Qt控件概述与应用举例 Qt控件有很多很多,直到现在我也有很多没有用过。说到这,提一下,我们可以使用Qt Designer快速设计和布局各种窗体部件,也可以使用纯代码进行窗体设计。...这块通过一个Demo串几个知识点:信号和槽,控件简单使用,如何根据自己功能去查找文档以及有一点难度应用。...我们看到字符改变会立即将信号传递到槽输出,按下回车键后对应槽也进行了响应。挺好玩。 ? ?

1.8K20

Qt界面编程:窗口传值方式

1、问题   一个这样场景:主窗口界面有一个菜单项,点击该菜单项弹出一个对话框。点击对话框上测试按钮,显示主窗口类一个字符串成员内容。这就是整个窗口传值需求描述。如何解决呢?...直接在子窗口中利用指向父窗口指针来访问父窗口类成员如何?但是,这显然也牵涉到了头文件递归包含(2)。但,不试一试怎么知道?毕竟很多事情是无法用理论来解释。...2、尝试解决 使用环境:Qt5.0,  Qt creator2.6, Windows XP sp3 32bit 创建一个主窗口类和子窗口类,在主窗口类声明一个QString类型成员变量,访问权限设置为...所以在子窗口头文件必须要包含主窗口头文件,否则连编译都无法通过。...上面3所标识问题,其实并没有严格要求,至少在Qt Creator没有这样限制。你可以将该成员变量设置为private,protected, public,但是在子窗口中照样能访问

2.9K70

Qt 学习记录

)mutable ->函数返回值{函数体} ① 外部变量访问方式说明符 [],标识一个 Lambda 开始,这部分必须存在,不能省略。...外部变量访问方式说明符只能使用定义 Lambda 为止时 Lambda 所在作用范围内可见局部变量(包括 Lambda 所在类 this)。外部变量访问方式说明符有以下形式: 空。...QMainWindow QMainWindow是一个为用户提供主窗口程序类,包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个锚接部件(dock widgets)、一个状态栏(...直接调用QMainWindowaddToolBar()函数获取主窗口工具条对象,每增加一个工具条都需要调用一次该函数。 插入属于工具条动作,即在工具条上添加操作。...) 除了以上几个部件,中心显示部件都可以作为核心部件,例如一个记事本文件,可以利用QTextEdit做核心部件,中心部件只能有一个。

7.1K50
领券