pyqt4 基本窗口,窗口布局,设置logo,窗口最大最小化

#-*- coding:utf-8 -*-
####上面一行是指定编码,这样文件中(包括注释)才能使用中文,否则无法运行
#pyqt4基本窗口示例
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys
class MyWindow(QDialog,QWidget):
    def __init__(self,parent = None):
        super(MyWindow,self).__init__(parent)
        self.windowInit()

    def windowInit(self):
        self.setFont(QFont("Roman times",10.5))##设置字体
        self.setWindowTitle("MyExample")##设置窗口标题
        self.resize(400,400)#####设置窗口大小
        self.setWindowFlags(Qt.WindowMinMaxButtonsHint)#######允许窗体最大最小化

        #####设置log
        icon = QIcon()
        icon.addPixmap(QPixmap("chitu.ico"),QIcon.Normal)
        self.setWindowIcon(icon)

        ###窗体布局,比如在里面布局两个控件
        self.mainLayOut = QGridLayout(self)##总得布局
        self.mainLayOut.setMargin(10) ##设置间距
        self.mainLayOut.setSpacing(10)##间距

        ####现在我们来布局一个groupBox,一个textEdit
        self.myGroupBox  = QGroupBox()
        self.mainLayOut.addWidget(self.myGroupBox,0,0,1,1)#####四个参数分别是,起始行,起始列,占用行,占用列
        self.myGroupBox.setMinimumWidth(self.width()/2)  ########有时候控件的大小会影响容器大小,我们可以这样限定

        ######groupbox 是一个容器,如果我们需要继续在这里面布局,写东西,只需要再设置一个布局就可以,这里只往里面写入一个lineedit
        self.myGroupBoxLayout = QGridLayout() ###可以在这里将groupbox 传入,也可以之后再设置
        self.myline = QLineEdit()
        self.myline.setText(u"你好~")
        self.myGroupBoxLayout.addWidget(self.myline)
        self.myGroupBox.setLayout(self.myGroupBoxLayout)

       ######这个空间放在主窗口右边,上面的groupbox已经占了一行一列,那么我们可以放在第二列,
       # 注意这个行列关系是根据比例来的,我们总共有列数两列,那就是占一半,当然也会受里面的控件影响,可以通过设置控件大小适当调整
        self.textEditDebugMsg = QTextEdit()
        self.mainLayOut.addWidget(self.textEditDebugMsg,0,1,1,1)

app=QApplication(sys.argv)
window=MyWindow()
window.show()
app.exec_()

你可能感兴趣的:(Pyqt)