本教程主要介绍pyqt5的GUI用户页面的内容,主要是使用手写代码的方式,不使用pycharm的工具编辑。请在阅读前参考官方文档
按钮组件QPushButton
的使用方法
官方文档QPushButton
同时QPushButton
还继承QAbstractButton
,所以还有QAbstractButton
的方法
官方文档QAbstractButton
官方文档QWidget
创建普通的按钮组件
使用myButton = QPushButton(self)
来创建按钮,与标签一样,可以使用myButton.setText("hello button")
设置按钮的文本,使用myButton.move(100,100)
来移动按钮。
还是接着上一篇文章的代码来接着写。
使用上一篇代码时,不要把QPushButton和QLabel移动到同一个位置,否则只能看到QPushButton或者只能看到QLabel
代码
from PyQt5.Qt import *
# 引入pyqt5的模块
# pyqt5包括很多的小分类,但是很难背下来
# PyQt5.Qt包括了所有的常用gui的库
# 所以在我们背下来之前,建议使用PyQt5.Qt来引入
import sys
# 引入sys模块
# 在设置窗口的时候会使用的到
class helloworld(QWidget):
"""
创建一个页面的类
"""
def __init__(self):
"""
初始化类
"""
super().__init__()
self.InitUi()
def InitUi(self):
"""
窗口上的内容和窗口设置
"""
self.setWindowTitle("pyqt5程序面板") # 设置窗口标题
self.resize(700,500) # 设置窗口大小
self.move(1,1) # 移动到屏幕的左上角
self.mylabel = QLabel(self) # 创建一个QLabel
self.mylabel.setText("标签QLabel") # 写入文字
self.mylabel.move(1,10) # 移动到1,1
self.mybutton = QPushButton(self) # 创建一个QPushButton
self.mybutton.setText("按钮组件QPushButton") # 写入文字
self.mybutton.move(100,1) # 移动到100,1
if __name__ == '__main__':
app = QApplication(sys.argv) # 创建APP
w = helloworld() # 设置窗口为helloworld类
w.show() # 显示窗口
sys.exit(app.exec_()) # 窗口循环
运行结果
给按钮添加点击后触发的函数
- 先在窗口类里面定义一个按钮触发后的函数:
def buttonClick(self):
print("你点击了按钮") # 点击按钮后打印
- 给按钮添加点击事件,按钮的点击事件可以用
mybutton.clicked.connect(self.buttonClick)
来定义
注意!使用函数作为传参需要加lambda
,或者不加括号!另外,clicked不要加括号
代码:
from PyQt5.Qt import *
# 引入pyqt5的模块
# pyqt5包括很多的小分类,但是很难背下来
# PyQt5.Qt包括了所有的常用gui的库
# 所以在我们背下来之前,建议使用PyQt5.Qt来引入
import sys
# 引入sys模块
# 在设置窗口的时候会使用的到
class helloworld(QWidget):
"""
创建一个页面的类
"""
def __init__(self):
"""
初始化类
"""
super().__init__()
self.InitUi()
def InitUi(self):
"""
窗口上的内容和窗口设置
"""
self.setWindowTitle("pyqt5程序面板") # 设置窗口标题
self.resize(700,500) # 设置窗口大小
self.move(1,1) # 移动到屏幕的左上角
self.mylabel = QLabel(self) # 创建一个QLabel
self.mylabel.setText("标签QLabel") # 写入文字
self.mylabel.move(1,10) # 移动到1,1
self.mybutton = QPushButton(self) # 创建一个QPushButton
self.mybutton.setText("按钮组件QPushButton") # 写入文字
self.mybutton.move(100,1) # 移动到100,1
self.mybutton.clicked.connect(lambda :self.buttonClick())
def buttonClick(self):
print("你点击了按钮") # 点击按钮后打印
if __name__ == '__main__':
app = QApplication(sys.argv) # 创建APP
w = helloworld() # 设置窗口为helloworld类
w.show() # 显示窗口
sys.exit(app.exec_()) # 窗口循环
运行结果:
点击前:
点击后:
未完待续