【Python】pyqt5-----QPushButton、QCommandLinkBut​​ton、QToolButton、QRadioButton、QButtonGroup、QCheckBox

QPushButton继承于QAbstractButton

创建按钮控件

QPushButton(parent)创建控件的同时, 设置父控件。
QPushButton(text, parent)创建控件的同时, 设置提示文本和父控件。
QPushButton(icon, text, parent)创建控件的同时, 设置图标, 提示文本和父控件。

菜单相关

setMenu(QMenu)设置菜单。
menu()获取菜单。
showMenu()展示菜单。

QMenu相关

addMenu(QMenu)添加子菜单。
addSeparator()添加分割线。
addAction(QAction)添加行为动作(菜单的列表)。
setTitle(str)设置菜单文本。
setIcon(QIcon)设置菜单图标。

 QAction设置

setText(str)设置菜单列表的文本。
setIcon(QIcon)设置菜单列表的图标。
triggered点击信号。

扁平化

setFlat(bool)设置了此属性,则除非按下按钮,否则大多数样式都不会绘制按钮背景默认;值为False。
isFlat()获取当前按钮边框是否扁平。

默认处理

setAutoDefault(bool)设置为自动默认按钮。
autoDefault()获取按钮是否设置了自动默认。
setDefault(bool)设置为默认按钮。
isDefault()获取按钮是否设置默认。

QCommandLinkBut​​ton继承于QPushButton

QCommandLinkBut​​ton(text, description ,parent)创建QCommandLinkBut​​ton。
setText(str)设置标题。
setDescription(str)设置描述。
description()获得描述。

 QToolButton继承于QAbstractButton

 设置文本,图标,工具提示

setText(str)设置文本。
setIcon(QIcon)设置图标。
setIconSize(QSize)设置图标大小。
setToolTip(str)设置工具提示。

设置按钮样式风格

setToolButtonStyle(Qt.ToolButtonStyle)设置按钮样式风格。
Qt.ToolButtonIconOnly仅显示图标。
Qt.ToolButtonTextOnly仅显示文字。
Qt.ToolButtonTextBesideIcon文本显示在图标旁边。
Qt.ToolButtonFollowStyle遵循风格。
Qt.ToolButtonTextUnderIcon文本显示在图标下方。
toolButtonStyle()获取当前按钮样式。

设置箭头

setArrowType(Qt.ArrowType)设置箭头样式。
Qt.NoArrow无箭头。
Qt.UpArrow向上箭头。
Qt.DownArrow向下箭头。
Qt.LeftArrow向左箭头。
Qt.RightArrow向右箭头。
arrowType()获取图标样式。

设置自动提升

setAutoRaise(bool)设置自动提升。
autoRaise()获取是否自动提升。

设置菜单

setMenu(QMenu)设置菜单。
menu()获取菜单。
setPopupMode(QToolButton.ToolButtonPopupMode)

QToolButton.DelayedPopup:鼠标按住一会才显示。

QToolButton.MenuButtonPopup:有一个专门的指示箭头,点击箭头才显示。

QToolButton.InstantPopup:点了按钮就显示,点击信号不会发射。

特有信号

triggered(QAction *action)

当点击某个action时触发, 并会将action传递出来。

QAction对象可以通过setData(Any):绑定数据,data():获取数据。


QRadioButton继承于QAbstractButton

 基本设置

QRadioButton(text, parent)单选按钮创建。
setText()设置文本。
setShortcut()设置快捷键。
setIcon(QIcon)设置图标。

信号

toggled(bool)切换信号。

互斥问题

1、把两组单选按钮放在不同的父控件中。

2、设置QButtonGroup。


QButtonGroup继承于QObject

创建按钮组

QButtonGroup(parent)创建按钮组。

添加按钮

addButton(QAbstractButton, int)int处填的是id,如果id为-1,则将为该按钮分配一个id。自动分配的ID保证为负数,从-2开始。如果要分配自己的ID,请使用正值以避免冲突。

查看按钮

buttons()查看按钮组中所有的按钮。
button(ID)根据ID获取对应按钮, 没有则返回None。
checkedButton()获取选中的那个按钮。

移除按钮

removeButton(QAbstractButton)移除按钮。

绑定和获取ID

setId(QAbstractButton,int)绑定按钮id。
id(QAbstractButton)获取按钮对应的id。
checkedId()选中的id,如果没有选中按钮则返回-1。

独占设置

setExclusive(bool)设置按钮组独占。
exclusive()获取按钮组是否独占。

信号

buttonClicked[int]当按钮组中的按钮被点击时, 发射此信号。加[int]打印id,不加打印按钮。
buttonPressed当按钮组中的按钮被按下时, 发射此信号。
buttonReleased当按钮组中的按钮被释放时, 发射此信号。
buttonToggled当按钮组中的按钮被切换状态时, 发射此信号。
def click(val):
 print(val)
gbtn1.buttonClicked[int].connect(click)

QCheckBox继承QAbstractButton

创建复选框

QCheckBox(text, parent=None)创建多选按钮。

设置是否支持复选框展示三种状态

setTristate(bool=True)设置是否三态。
isTristate()获取是否设置了三态。

设置复选框状态

setCheckState(Qt.CheckState)

设置复选框状态。

Qt.Unchecked:该项目未选中。

Qt.PartiallyChecked:部分选中。

Qt.Checked:真的被选中。

checkState()获取复选框状态。

信号

stateChanged(int state)选中或清除选中时, 发射此信号
其他继承

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SamRol

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值