zoukankan      html  css  js  c++  java
  • 第一个Python窗体程序

    新建ui_MainWindow.py文件

    # encoding: UTF-8
    # Qt相关和十字光标
    
    from PyQt4.QtGui import *
    from PyQt4.QtCore import *
    from PyQt4 import QtGui,QtCore
    ########################################################################
    
    
    class ui_MainWindow( QtGui.QMainWindow):
    # ----------------------------------------------------------------------
    # 俩个构造函数
        def __init__(self, parent=None):
            QtGui.QMainWindow.__init__(self)# 创建主界面对象
            self.setWindowTitle(u'爱宽客') #错误代码self.setWindowTitle('爱宽客'),会造成中文乱码
    
            self.resize(250,150)
    
    
    if __name__ == "__main__":
        import sys
        app = QApplication(sys.argv)
        main = ui_MainWindow()#创建一个主窗体(必须要有一个主窗体)
    
        main.show()#主窗体显示
        app.exec_()
     

    PyQT中__init__(self,parent==None)的parent含义
    在PyQt中,所以class都是从QObject派生而来,QWidget对象就可以有一个parent。这种parent-child关
    系主要用于两个方面:
    没有parent的QWidget类被认为是最上层的窗体(通常是MainWindow),由于MainWindow的一些操作生成
    的新窗体对象,parent都应该指向MainWindow。
    由于parent-child关系的存在,它保证了child窗体在主窗体被回收之时也被回收。
    parent作为构造函数的最后一个参数被传入,但通常情况下不必显示去指定parent对象。因为当调用局
    管理器时,部局管理器会自动处理这种parent-child关系。但是在一些特殊的情况下,我们必须显示的
    指定parent-child关系。如当生成的子类不是QWidget对象但继承了QObject对象,用作dock widgets的
    QWidget对象。

    问题:
     1: app = QApplication(sys.argv)//必须传入参数

    初始化窗口系统并且使用在argv中的argc个命令行参数构造一个应用程序对象。参考http://www.kuqin.com/qtdocument/qapplication.html#QApplication

    2:
    PyQt4中的中文显示问题
    解决方法:a:中文加 u
    b: QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))
             c:
    # 重载sys模块,设置默认字符串编码方式为utf8
    import sys
    reload(sys)
    sys.setdefaultencoding('utf8')

    或者显式的使用unicode函数进行转换。

    水平有限,以待后面补充加改


  • 相关阅读:
    Scrapy 概览笔记
    Python 依赖版本控制 (requirements.txt 文件生成和使用)
    Python 虚拟空间的使用
    macOS 所有版本 JDK 安装指南 (with Homebrew)
    鉴权那些事
    Java 位运算符和 int 类型的实现
    ASP.NET Core 入门教程 5、ASP.NET Core MVC 视图传值入门
    如何做好一次知识或技术分享
    ASP.NET Core 入门教程 4、ASP.NET Core MVC控制器入门
    ASP.NET Core 入门教程 3、ASP.NET Core MVC路由入门
  • 原文地址:https://www.cnblogs.com/ft-Pavilion/p/7846838.html
Copyright © 2011-2022 走看看