1 Star 0 Fork 7

小麦/PySide6-UI-Demo

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
StackedWidget.py 2.25 KB
一键复制 编辑 原始数据 按行查看 历史
终點起點 提交于 2024-06-28 14:21 +08:00 . 新增部分控件
import sys
import os
import random
from PySide6.QtWidgets import *
from PySide6.QtGui import *
from PySide6.QtCore import *
class Demo(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.parent = parent
layout = QVBoxLayout()
toolBar = QToolBar()
btn = QPushButton('Add')
btn.clicked.connect(self.OnAddClicked)
toolBar.addWidget(btn)
btn = QPushButton('Insert')
btn.clicked.connect(self.OnInsertClicked)
toolBar.addWidget(btn)
btn = QPushButton('Delete')
btn.clicked.connect(self.OnDeleteClicked)
toolBar.addWidget(btn)
toolBar.addWidget(QLabel('Current:'))
self.combox =QComboBox()
self.combox.activated.connect(self.ComboxActivated)
toolBar.addWidget(self.combox)
layout.addWidget(toolBar)
self.stackedwidget = QStackedWidget()
self.stackedwidget.currentChanged.connect(self.CurrentChanged)
layout.addWidget(self.stackedwidget)
self.setLayout(layout)
def OnAddClicked(self):
widget = f'Label{self.stackedwidget.count()}'
self.stackedwidget.addWidget(QLabel(widget))
self.combox.addItem(widget)
self.parent.OnShowMessage(f"Add {widget}")
def OnInsertClicked(self):
widget = f'Label{self.stackedwidget.count()}'
index = self.stackedwidget.currentIndex()
if index==-1:
index=0
self.stackedwidget.insertWidget(index,QLabel(widget))
self.combox.insertItem(index,widget)
self.parent.OnShowMessage(f"Insert {widget} at {index}")
def OnDeleteClicked(self):
current = self.stackedwidget.currentWidget()
if current is None:return
self.parent.OnShowMessage(f"Delete {current.text()}")
self.stackedwidget.removeWidget(current)
item = self.combox.findText(current.text())
self.combox.removeItem(item)
def CurrentChanged(self,index):
current = self.stackedwidget.widget(index)
self.parent.OnShowMessage(f"Current {current.text()}")
def ComboxActivated(self,index):
self.stackedwidget.setCurrentIndex(index)
def runDemo(parent):
wigdet = Demo(parent)
return wigdet
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/hmz-xm/pyside6-ui-demo.git
git@gitee.com:hmz-xm/pyside6-ui-demo.git
hmz-xm
pyside6-ui-demo
PySide6-UI-Demo
master

搜索帮助