2 Star 10 Fork 7

终點起點/PySide6-UI-Demo

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
ToolButton.py 2.46 KB
一键复制 编辑 原始数据 按行查看 历史
终點起點 提交于 2024-07-09 17:14 +08:00 . 增加新功能
import sys
import os
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()
layout.setAlignment(Qt.AlignmentFlag.AlignTop)
cb = QToolButton(self)
cb.setToolTip('Default ToolButton')
cb.clicked.connect(self.OnClicked)
layout.addWidget(cb)
groupBox = QGroupBox('ToolButton With Icon')
groupLayout = QHBoxLayout()
groupLayout.setAlignment(Qt.AlignmentFlag.AlignLeft)
cb = QToolButton(self)
cb.setIcon(QIcon(f'{self.parent.getAppDir()}/resources/confirm.png'))
cb.clicked.connect(self.OnIconClicked)
groupLayout.addWidget(cb)
cb = QToolButton(self)
cb.setText('Confirm')
cb.setIcon(QIcon(f'{self.parent.getAppDir()}/resources/confirm.png'))
cb.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
cb.clicked.connect(self.OnIconClicked)
groupLayout.addWidget(cb)
cb = QToolButton(self)
cb.setText('Save')
cb.setIcon(QIcon(f'{self.parent.getAppDir()}/resources/confirm.png'))
cb.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextUnderIcon)
cb.setPopupMode(QToolButton.ToolButtonPopupMode.MenuButtonPopup)
self.menu = QMenu(cb)
self.menu.addAction(QAction("Save", self.menu, triggered=self.OnSaveActionClicked))
self.menu.addAction(QAction('Save as',self.menu,triggered=self.OnSaveasActionClicked))
cb.setMenu(self.menu)
cb.clicked.connect(self.OnMenuButtonClicked)
groupLayout.addWidget(cb)
groupBox.setLayout(groupLayout)
layout.addWidget(groupBox)
self.setLayout(layout)
def OnClicked(self,event):
self.parent.OnShowMessage(f'ToolButton Clicked')
def OnIconClicked(self,event):
self.parent.OnShowMessage(f'Icon ToolButton Clicked')
def OnMenuButtonClicked(self,event):
self.parent.OnShowMessage(f'Menu ToolButton Clicked')
self.menu.show()
def OnSaveActionClicked(self,event):
self.parent.OnShowMessage(f'Menu Save Action Clicked')
def OnSaveasActionClicked(self,event):
self.parent.OnShowMessage(f'Menu Saveas Action Clicked')
def runDemo(parent):
wigdet = Demo(parent)
return wigdet
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/johnjiangw/pyside6-ui-demo.git
git@gitee.com:johnjiangw/pyside6-ui-demo.git
johnjiangw
pyside6-ui-demo
PySide6-UI-Demo
master

搜索帮助