zoukankan      html  css  js  c++  java
  • Python使用Qt的UI文件

    Python使用Qt的UI文件 - 猫之良品 - 博客园

    Python使用Qt的UI文件

    我是个PHP程序员,不过有时候觉得需要写些小软件,对于我这种不太熟悉桌面软件开发的人来说,界面问题最让我头痛。听说Qt很强大,而且是跨平台,所以决定学习它用来弥补我写桌面软件的不足。

    Qt一般是通过C++来调用,如果要让Python支持Qt,需要下载PyQt这个库,十几M大小,安装后就可以让Python支持部分Qt功能。

    在完整版Qt的Demo中,一般都是程序与界面分开,界面代码被写在.ui后缀的XML文件中,而程序只需要调用UI文件和写处理事件就行,实现代码与界面分离。而且ui文件可以用Qt Designer这个工具设计复杂的界面,这个工具在安装PyQt后就会有,而且使用方便。

    查过Qt手册,发现读取UI文件功能是通过QtUiTools模块来完成,但PyQt却没有这个类,所以无法直读UI文件。找到唯一利用UI的方法,是通过pyuic4指令进行转换,格式如下:
    pyuic4 -o ui_xxx.py xxx.ui
    pyuic4可以把ui文件转换为python的界面代码,这样python就可以利用强大的Qt Designer设计界面。

    调用代码如下:
    复制代码
    代码
    #-*- coding: gbk -*-

    #加载有需要的Qt库
    from PyQt4 import QtCore, QtGui

    #从ui_test.py文件中读取Ui_Dialog类,Ui_Dialog类由pyuic4生成
    from ui_test import Ui_Dialog

    #继承的类要和生成的ui对相
    class Ui(QtGui.QDialog):
    def __init__(self, parent=None):
    super(Ui, self).
    __init__(parent)

    self.ui 
    = Ui_Dialog()

    self.ui.setupUi(self)

    if __name__ == '__main__':
    import sys

    app 
    = QtGui.QApplication(sys.argv)
    window 
    = Ui()
    window.show()
    sys.exit(app.exec_())
    复制代码
  • 相关阅读:
    python环境的安装 环境变量和系统变量
    git语句(后续补充)
    pycharm的安装配置及思维导图
    python基础知识 01
    C#基础系列——异步编程初探:async和await
    Type.MakeGenericType 方法 (Type[]) 泛型反射
    ZeroFormatter
    intelliJ IDEA相关
    truesky天气系统
    tressfx hair
  • 原文地址:https://www.cnblogs.com/lexus/p/2819467.html
Copyright © 2011-2022 走看看