您好,登錄后才能下訂單哦!
QMainWindow類中比較重要的方法
方法 | 描述 |
---|---|
addToolBar() | 添加工具欄 |
centralWidge() | 返回窗口中心的一個控件,未設置時返回NULL |
menuBar() | 返回主窗口的菜單欄 |
setCentralWidget() | 設置窗口中心的控件 |
setStatusBar() | 設置狀態欄 |
statusBar() | 獲得狀態欄對象后,調用狀態欄對象的showMessage(message,int timeout=0)方法 |
顯示狀態欄信息,其中第一個參數是要顯示的狀態欄信息,第二個參數是信息停留的時間,單位是毫秒,默認是0,表示一直顯示狀態欄信息 |
顯示狀態欄信息,其中第一個參數是要顯示的狀態欄信息,第二個參數是信息停留的時間,單位是毫秒,默認是0,表示一直顯示狀態欄信息
注意:QMainWindow不能設置布局(使用setLayout()方法),因為它有自己的布局
#下面這行代碼是為了避免在所生成的pyqt中出現中文亂碼的問題 # -*- coding:UTF-8 -*- import sys from PyQt5.QtWidgets import QApplication,QMainWindow from PyQt5.QtGui import QIcon class MainWindow(QMainWindow): def __init__(self,parent=None): #初始化繼承的父類(Qmainwindow) super(MainWindow, self).__init__(parent) #設置窗口的大小 self.resize(400,200) #實例化創建狀態欄 self.status=self.statusBar() #將提示信息顯示在狀態欄中showMessage(‘提示信息',顯示時間(單位毫秒)) self.status.showMessage('這是狀態欄提示',4000) #創建窗口標題 self.setWindowTitle('PyQt MainWindow例子') if __name__ == '__main__': # 每一個pyqt程序中都需要有一個QApplication對象,sys.argv是一個命令行參數列表 app=QApplication(sys.argv) #實例化窗口 form=MainWindow() #窗口顯示 form.show() #進入程序的主循環,遇到退出情況,終止程序 sys.exit(app.exec_())
效果圖如下:
from PyQt5.QtWidgets import QDesktopWidget,QApplication,QMainWindow import sys class WinForm(QMainWindow): def __init__(self,parent=None): super(WinForm, self).__init__(parent) self.setWindowTitle('主窗口居中的例子') #設置窗體的寬高 self.resize(370,250) #調用一個函數 self.center() def center(self): #獲取屏幕的大小 screen=QDesktopWidget().screenGeometry() #獲取窗口的大小 size=self.geometry() #將窗口移動到屏幕中央 self.move((screen.width() - size.width()) /2,(screen.height() - size.height()) /2) if __name__ == '__main__': app=QApplication(sys.argv) win=WinForm() win.show() sys.exit(app.exec_())
效果如下:
關閉主窗口實例
from PyQt5.QtWidgets import QMainWindow,QApplication,QHBoxLayout,QPushButton,QWidget import sys class WinForm(QMainWindow): def __init__(self,parent=None): super(WinForm, self).__init__(parent) self.setWindowTitle('關閉主窗口的例子') #創建按鈕實例,按鈕名稱:關閉主窗口 self.button1=QPushButton('關閉主窗口') #按鈕的clicked信號與onButtonClick槽函數關聯起來 self.button1.clicked.connect(self.onButtonClick) #水平布局 layout=QHBoxLayout() #按鈕加入水平布局中 layout.addWidget(self.button1) #創建widget窗口實例 main_frame=QWidget() #加載布局 main_frame.setLayout(layout) #把widget窗口加載到主窗口的中央位置 self.setCentralWidget(main_frame) def onButtonClick(self): #sender是發送信號的對象,這里獲得的是按鈕的名稱 sender=self.sender() #以文本的行書輸出按鈕的名稱 print(sender.text() + ' 被按下了') #獲取QApplication類的對象 qApp=QApplication.instance() #退出 qApp.quit() if __name__ == '__main__': app=QApplication(sys.argv) win=WinForm() win.show() sys.exit(app.exec_())
點擊按鈕,退出程序,控制臺輸出,關閉主窗口 被按下了
本文主要講解了python GUI庫圖形界面開發之PyQt5窗口類QMainWindow詳細使用方法,了解更多相關文章請查看下面的相關鏈接
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。