pyqt4文档阅读(4):QPushButton

本系列文章长期更新修改.


QPushButton,是GUI里最常用的组件之一.



属性:

Methods

  • __init__ (self, QWidget parent = None)
  • __init__ (self, QString text, QWidget parent = None)
  • __init__ (self, QIcon icon, QString text, QWidget parent = None)
  • bool autoDefault (self)
  • bool event (self, QEvent e)
  • focusInEvent (self, QFocusEvent)
  • focusOutEvent (self, QFocusEvent)
  • initStyleOption (self, QStyleOptionButton option)
  • bool isDefault (self)
  • bool isFlat (self)
  • keyPressEvent (self, QKeyEvent)
  • QMenu menu (self)
  • QSize minimumSizeHint (self)
  • paintEvent (self, QPaintEvent)
  • setAutoDefault (self, bool)
  • setDefault (self, bool)
  • setFlat (self, bool)
  • setMenu (self, QMenu menu)
  • showMenu (self)
  • QSize sizeHint (self)


详细分析:


1.主要属性

QPushButton的主要属性是text和icon,大部分的QPushButton使用都只是对这两个值的设置.

text是要显示的文本,icon是要显示的图标.它们能独自显示,也能一并显示.

这些属性可以在初始化的时候设置,也可以使用下面的函数设置.

  • __init__ (self, QWidget parent = None)
  • __init__ (self, QString text, QWidget parent = None)
  • __init__ (self, QIcon icon, QString text, QWidget parent = None)
  • QIcon icon (self)
  • QString text (self)
  • setIcon (self, QIcon icon)
  • setText (self, QString text)

2.快捷键

通过名字能给QPushButton设置快捷键,比如名字为"&Download"的按钮,它的快捷键是Alt+D.

规则就是你想实现快捷键Alt+x,名字里就要有这个x,并且x前面加上&.这个x不一定是首字母,但一般都是.

在显示的时候,这个"&"不会被显示出来,但那个字母会显示一条下划线.如果你只是想显示"&",需要像转义一样使用"&&".

更多快捷键方面的使用,需要参考QShortcut.

3.信号

QPushButton常用的信号是下面三个:

  • void clicked (bool = 0)
  • void pressed ()
  • void released ()

一般clicked我们会去掉那个bool参数,那个bool参数好像是给程序员用的,而不是给Qt用的.

按下的时候,pressed()会被激活.

按下状态时,释放鼠标或者鼠标离开按钮,released()会被激活.

按下状态时,释放鼠标,clicked()会被激活.也就是说,clicked()被激活,released()一定同时被激活.反之则不一定正确.

4.菜单

QPushButton允许我们给一个按钮设置一个下拉菜单.

  • QMenu menu (self)
  • setMenu (self, QMenu menu)
  • showMenu (self)
按下按钮的时候,下拉菜单会被显示出来,也可以通过showMenu().

注意在程序里调用showMenu()的话,菜单消失后,showMenu()才会返回.

5.边缘消失

flat属性为true时,按钮的边缘会消失,剩下文本和icon.只有按下的时候边缘才会出现.

  • bool isFlat (self)
  • setFlat (self, bool)
6.是否激活

有时候有些按钮是不能点击的,我们可以通过下面函数设置这种按钮:

  • bool isEnabled (self)
  • setEnabled (self, bool)

7.待续

setAutoDefault()

setDefault()

autoDefault()

isDefault()


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值