PyQt(Python+Qt)学习随笔:containers容器类部件QStackedWidget堆叠窗口属性
一、堆叠窗口简介
StackedWidget堆叠窗口部件为一系列窗口部件的堆叠,对应类为QStackedWidget。QStackedWidget类对应部件为放在堆栈中的多个窗口部件,这些放在堆栈中的窗口部件在界面上只能看到一个窗口。
如果不好理解的话,老猿觉得用QTabWidget选项窗部件做个对比就好理解了。
我们知道,QTabWidget选项窗部件是多个页面窗口组成的,每次用户选择其中一个选项卡时即显示对应的选项窗,未选中的选项窗不显示,但用户可以在选项卡栏上看到对应选项窗的选项标签。而QStackedWidget的堆叠窗口,在外观上可以看成一个隐藏了选项卡栏的QTabWidget选项窗部件,当前页面展示出来,其他页面被隐藏。
由于没有选项卡栏,StackedWidget堆叠窗口部件当前显示的页面只能通过代码进行页面切换,例如通过QComboBox或QListWidget存储对应页面的标题供人选择,然后根据选择结果将对应页面设置为当前页面。
二、属性
2.1、概述
在Designer中StackedWidget堆叠窗口部件非常简单,只有2个,如下:
除了这2个属性外,还有个未在Designer中设置的动态属性count。
2.2、currentIndex属性
currentIndex属性保存堆叠窗口部件的当前窗口的索引。如果没有当前窗口,则当前索引为-1。默认情况下,此属性值为-1,因为堆最初为空。在Designer中,部件设计拖拽到页面时,会初始化2个页面,此时currentIndex初始值为0。
可以通过currentIndex()和setCurrentIndex(int index)方法访问该属性,当当前页切换时,会发射currentChanged(int index)信号,参数为新的当前页索引。
2.3、currentPageName属性
StackedWidget堆叠窗口部件的currentPageName属性,在对应类QStackedWidget中并没有该同名属性,实际上该属性是StackedWidget中当前页面窗口对应部件的名字,通过部件的objectName属性访问。
相关访问示例代码如下:
self.page_10 = QtWidgets.QWidget()
self.page_10.setObjectName("page_10")
self.stackedWidget.addWidget(self.page_10)
2.4、count属性
count属性保存了堆叠窗口部件中的窗口数量,可以使用count()访问。
老猿Python,跟老猿学Python!
PyQt(Python+Qt)学习随笔:containers容器类部件QStackedWidget堆叠窗口属性的更多相关文章
- 第15.34节 PyQt(Python+Qt)入门学习:containers容器类部件QStackedWidget堆叠窗口部件详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 StackedWidget堆叠窗口部件为一系列窗口部件的堆叠,对应类为QStackedWi ...
- PyQt(Python+Qt)学习随笔:视图中类QAbstractItemView的dragDropOverwriteMode属性不能覆盖写的问题
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在<PyQt(Python+Qt)学习随笔:视图中类QAbstractItemView的dra ...
- PyQt(Python+Qt)学习随笔:视图中类QAbstractItemView的dragDropOverwriteMode属性
老猿Python博文目录 老猿Python博客地址 一.属性的作用 dragDropOverwriteMode属性用于控制视图的拖放行为,如果其值为True,则视图中选定的数据将在拖拽数据放下时被覆盖 ...
- PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled和dragDropMode属性的关系
老猿Python博文目录 老猿Python博客地址 在<PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled属性的困惑>中,老猿觉得dragE ...
- 第二十八章、containers容器类部件QStackedWidget堆叠窗口部件详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 StackedWidget堆叠窗口部件为一系列窗口部件的堆叠,对应类为QStackedWi ...
- PyQt(Python+Qt)学习随笔:QAbstractItemView的verticalScrollMode和horizontalScrollMode属性
老猿Python博文目录 老猿Python博客地址 一.概述 verticalScrollMode和horizontalScrollMode属性用于控制视图如何在垂直方向和水平方向滚动内容.滚动可以按 ...
- PyQt(Python+Qt)学习随笔:QWidget部件的palette属性以及ColorGroup、colorRole的用途和含义
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 1.palette属性 QWidget部件的palette属性用于控制 ...
- PyQt(Python+Qt)学习随笔:gridLayout的layoutHorizontalSpacing和layoutVerticalSpacing属性
layoutHorizontalSpacing和layoutVerticalSpacing属性在Qt Designer中是网格布局(gridLayout)和表单布局(formLayout)都有的属性, ...
- PyQt(Python+Qt)学习随笔:QTreeView树形视图的expandsOnDoubleClick属性
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的expandsOnDoubleClick属性用于控制鼠标双击是否展开或折 ...
随机推荐
- XML转换成TXT行数据的Java程序
ZKe ------------------- XML数据的一个块内的所有属性,转换成TXT文件的一行.众所周知XML文件是通过类似HTML的标签进行数据的定义如图所示 属性由id, article, ...
- ERP的权限管理的操作与设计--开源软件诞生24
赤龙ERP用户与权限管理讲解--第24篇 用日志记录"开源软件"的诞生 [进入地址 点亮星星]----祈盼着一个鼓励 博主开源地址: 码云:https://gitee.com/re ...
- vue+echarts+datav大屏数据展示及实现中国地图省市县下钻
随着前端技术的飞速发展,大数据时代的来临,我们在开发项目时越来越多的客户会要求我们做一个数据展示的大屏,可以直观的展示用户想要的数据,同时炫酷的界面也会深受客户的喜欢. 大屏展示其实就是一堆的图表能够 ...
- 聊一聊sockmap 以及ebpf 实例演示
eBPF实质上是一个内核注入技术 用户态可以用C来写运行的代码,再通过一个Clang&LLVM的编译器将C代码编译成BPF目标码: 用户态通过系统调用bpf()将BPF目标码注入到内核当中,并 ...
- linux之NTP服务
1. NTP服务(网络时间协议) Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒) ...
- xenserver使用ceph的rbd的方法
首先安装的xenserver6.5的环境,看到有地方有提到这个上面可以安装rbd的支持,网上有一种方式是libvirt+kvm方式,因为ceph对libviet是原生支持的,但是xenserver底层 ...
- RedisEclipse
1.Eclipse配置 2.HelloWorld import redis.clients.jedis.Jedis; public class TestPing { public static voi ...
- python-网络安全编程第一天(requests模块)
前言 感觉现在做好多CTF题都需要python去写工具,正好期末考试放假利用空余时间来学学. requests简介 Requests是用python语言基于urllib编写的,采用的是Apache2 ...
- 在CorelDRAW中为对象添加块阴影效果
我们可以使用CorelDRAW来绘制矢量图形,在勾画出简单的图形后,往往还需要对它们进行一些或简单或复杂的处理,以增加一定的艺术效果.CDR中可供选择的效果有很多,作用的对象可以是文字,也可以是图案. ...
- celery原理与组件
1.Celery介绍 https://www.cnblogs.com/xiaonq/p/11166235.html#i1 1.1 celery应用举例 Celery 是一个 基于python开发的 分 ...