#-*- 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_()
pyqt4 基本窗口,窗口布局,设置logo,窗口最大最小化
最新推荐文章于 2024-04-12 10:29:54 发布