龙空技术网

第16天 | 28天学会PyQt5,按钮

老陈说编程 330

前言:

而今小伙伴们对“java文本输入框和确定按钮在哪找”可能比较注重,同学们都想要剖析一些“java文本输入框和确定按钮在哪找”的相关文章。那么小编同时在网上收集了一些有关“java文本输入框和确定按钮在哪找””的相关内容,希望朋友们能喜欢,看官们快快来了解一下吧!

widget的动态组件有10多个,有按钮QPushButton、单选按钮QRadioButton和列表框QComboBox等等。如果只是一味地念”名词”,实在太无趣了,能用代码+注释的方式讲解组件,那才有点意思。

按钮QPushButton继承自QAbstractButton类,其形状是长方形,文本标题或图标可以显示在长方形上。它也是一种命令按钮,可以单击该按钮执行一些命令或者响应一些事件。

QAbstractButton类为抽象类,不能实例化,必须由其他的按钮类(如QPushButton)继承之后,实现不同的功能和表现形式,根据各自的使用场景通过图形显示出来。

按钮绑定事件处理函数用connect()方法,在事件函数里通过sender()获取控件对象,从而进行相关处理。PyQt5在绑定事件处理函数之前,需要先选择事件类型,按钮常用的事件

类型如下表所示:

事件类型

描述

Pressed

鼠标指针在按钮上并按下左键时触发事件;

Clicked

鼠标左键被按下然后释放时,或者快捷键被释放时触发事件;

Released

鼠标左键被释放时触发事件。

按钮QPushButton常用的方法如下表所示:

方法

描述

setProperty()

可按字典的方式设置键值对,这对于区分不同的控件特别有用;

setShortcut()

方法用于设置按钮的快捷键;

setDefault(True)

让按钮默认为选中状态;

setText()

修改按钮的文本信息;

setIcon()

在按钮上设置图标;

setFlat(True)

让按钮成为扁平化(去掉背景) 。

程序清单:button.py

import sysfrom PyQt5.QtWidgets import QApplication, QWidget, QDesktopWidget,  QPushButtonfrom PyQt5.QtGui import QIcon# 继承QWidgetclass ButtonWidget(QWidget):    ID_SUBMIT_BUTTON = 100    ID_CLEAR_BUTTON = 101    def __init__(self):        super().__init__()        self.init_ui()    def init_ui(self):        # 确定按钮        submit_btn = QPushButton("确定", self)        submit_btn.setProperty("id", self.ID_SUBMIT_BUTTON)        submit_btn.setShortcut("ctrl+b")  # 快捷键        submit_btn.setDefault(True)        submit_btn.move(50, 50)        submit_btn.clicked.connect(self.clicked)        # 清空按钮        clear_btn = QPushButton(self)        clear_btn.setProperty("id", self.ID_CLEAR_BUTTON)        clear_btn.setText("清空")        clear_btn.setIcon(QIcon("del.png"))        clear_btn.setFlat(True)        clear_btn.move(200, 50)        clear_btn.clicked.connect(self.clicked)        clear_btn.released.connect(self.released)        # 调整窗口大小        self.resize(900, 500)        # 窗口居中        self.center()        # 窗口标题        self.setWindowTitle("按钮应用")        # 显示窗口        self.show()        # 获取文件夹路径    # 点击    def clicked(self):        sender = self.sender()        print(sender.text())        if sender.property("id") == self.ID_SUBMIT_BUTTON:            print("可操作:%s" % sender.isEnabled())        else:            print("扁平:%s" % sender.isFlat())    # 释放    def released(self):        sender = self.sender()        sender.setText("清空了")    # 实现居中    def center(self):        f = self.frameGeometry()        c = QDesktopWidget().availableGeometry().center()        f.moveCenter(c)        self.move(f.topLeft())if __name__ == "__main__":    app = QApplication(sys.argv)    w = ButtonWidget()    sys.exit(app.exec_())

运行程序之后,弹出的窗口如下:

好了,按钮的内容就说到这了,关注我,下一节更精彩。

码字不易,你的关注和转发是对我最大的鼓励,谢谢!

一个当了10年技术总监的老家伙,分享多年的编程经验。想学编程的朋友,关注我,你就赚到了。我正在分享Python、前端、Java和App方面的干货了。赶紧来围观啊!!!

#python##程序员##好平台好讲师##桌面##热搜#

标签: #java文本输入框和确定按钮在哪找 #java文本输入框和确定按钮的区别