pyqt4 基本視窗,窗口布局,設定logo,視窗最大最小化
阿新 • • 發佈:2019-02-17
#-*- 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_()