本文共 2223 字,大约阅读时间需要 7 分钟。
PyQt5默认模板优化
在PyQt5开发中,默认模板通常包括创建应用程序对象、设置窗口布局、绑定事件处理等基本操作。本文将详细介绍PyQt5的常用操作示例。
按钮点击事件绑定
在PyQt5中,按钮的点击事件可以通过clicked.connect()
方法绑定。以下是一个简单的示例:
from PyQt5.Qt import *app = QApplication(sys.argv)window = QWidget()window.setWindowTitle('案例')window.resize(500, 500)window.show()def changeCao(): new_content = label.text() + 'hello' label.setText(new_content) label.adjustSize()btn = QPushButton(window)btn.setText('测试按钮')btn.move(100, 300)btn.clicked.connect(changeCao)
快捷键监听
PyQt5支持监听系统快捷键,包括普通键位和修饰键。以下是一个监听多个修饰键组合的示例:
from PyQt5.Qt import *app = QApplication(sys.argv)window = QWidget()window.setWindowTitle('案例')window.resize(500, 500)window.show()class MainWindow(QWidget): def keyPressEvent(self, evt): if evt.modifiers() == Qt.ControlModifier | Qt.ShiftModifier and evt.key() == Qt.Key_A: print("Ctrl+Shift+A被点击了") if evt.modifiers() == Qt.ControlModifier and evt.key() == Qt.Key_S: print("Ctrl+S被点击了")window = MainWindow()label = QLabel(window)label.setText("测试文本")label.resize(200, 200)label.move(100, 100)label.setStyleSheet("background-color:cyan;")label.grabKeyboard()app.exec_()
软件图标设置
为应用程序设置图标,可以通过setWindowIcon()
方法实现。确保图标路径正确:
from PyQt5.Qt import *app = QApplication(sys.argv)window = QWidget()window.setWindowTitle('案例')icon = QIcon("/Users/zhangqiang/Downloads/测试图片/ccc.png")window.setWindowIcon(icon)window.resize(500, 500)window.show()app.exec_()
按钮状态设置
通过setEnabled()
方法可以控制按钮的启用状态。以下是一个简单的示例:
from PyQt5.Qt import *app = QApplication(sys.argv)window = QWidget()window.setWindowTitle('登录界面')window.resize(500, 500)window.show()le = QLineEdit(window)le.setText("请输入账号")le.move(100, 100)btn = QPushButton(window)btn.setText("登录")btn.move(100, 150)btn.setEnabled(False)def text_cao(text): print("文本内容发生了改变:", text) if len(text) > 0: btn.setEnabled(True) else: btn.setEnabled(False)le.textChanged.connect(text_cao)app.exec_()
文本框和标签自动调整大小
PyQt5的adjustSize()
方法可以自动根据内容调整控件大小:
from PyQt5.Qt import *app = QApplication(sys.argv)window = QWidget()window.setWindowTitle('案例')window.resize(500, 500)window.show()label = QLabel(window)label.setText("测试文本")label.adjustSize()label.move(100, 100)app.exec_()
以上示例提供了PyQt5中常用操作的基础代码,适合用于开发简单的 GUI 应用程序。
转载地址:http://madwz.baihongyu.com/