PyQt入门

时间:2020-05-17
本文章向大家介绍PyQt入门,主要包括PyQt入门使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

python GUI框架对比

  • Tkinter: python内置的GUI框架,使用TCL实现,python中内嵌了TCL解释器,使用它的时候不用安装额外的扩展包,直接import,跨平台。不足之处在于UI布局全靠代码实现,只有15种常用部件,显示效果简陋。

  • Wxpython:用得比较广泛,跨平台,C++编写,需要安装扩展模块;文档少,遇到问题不好解决,代码布局控件,不直观。

  • PyQt:QT原本是诺基亚的产品,源码用C++写的,python对QT的包装,跨平台,本地显示效果,根据系统决定,在win7下就是win7的显示效果;pyqt与qt的函数接口一致,qt开发文档丰富,所以pyqt开发文档也比较丰富;控件丰富,函数/方法多,拖曳布局;方便打包成二进制文件;GPL协议,商业程序需要购买商业版授权

为什么选择PyQt?

  • PyQt和Qt的接口完全一致,学一会二

  • 跨平台,运行效率高

  • 文档丰富,学习成本低

  • 容易打包发布

PyQt内容大纲

  • 基础控件

    • QWidget 最最最最基础的控件

    • QMainWindow 主界面控件

    • QMenuBar 菜单栏控件

    • QToolBar 工具栏控件

    • QStatusBar 状态栏控件

    • QPushButton 按钮控件

    • QRadioButton 单选按钮

    • QCheckBox 复选框按钮

    • QCombobox 下拉列表框

    • QLineEdit 单行文本框

    • QTextEdit 多行文本框

    • QSpinBox 计数器

    • QSlider 滑动条

    • QCalendar 日历

    • QDataTimeEdit 日期时间控件

    • QDialog 最最最最基础的对话框控件

    • QMessageBox 消息弹出式对话框

    • QInputDialog 输入对话框

    • QFontDialog 字体选择对话框

    • QFileDialog 文件对话框

  • 高级控件

    • MVD 模型视图委托

    • QListView 列表显示

    • QTableView 表格显示

    • QTreeView 树形显示

    • QTimer 定时器

    • QThread 多线程

  • 布局管理器

    • QHBoxLayout 水平布局管理器

    • QVBoxLayout 垂直布局管理器

    • QFormLayout 表单布局管理器

    • QGridLayout 网格布局管理器

  • 事件处理

    • 低级事件处理:复写对象的事件方法

    • 高级事件处理:信号与槽

安装PyQt

pip install PyQt5

入门例子

 打开一个界面,显示hello world
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel

class MyWidget(QWidget):
    def __init__(self):
        super(MyWidget, self).__init__()
        label = QLabel(self)
        label.setText('hello world!')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    w = MyWidget()
    w.resize(500, 300)
    w.move(300, 300)
    w.setWindowTitle('Simple')
    w.show()
    sys.exit(app.exec_())

原文地址:https://www.cnblogs.com/chusiyong/p/12903989.html