国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

QMainWindow

2022-01-07 16:45 作者:海鷗之道  | 我要投稿

QMain Window主窗口為用戶提供一個應(yīng)用程序框架,它有自己的布局,可以在布局中添加控件。在主窗口中可以添加控件,比如將工具欄、菜單欄和狀態(tài)欄等添加到布局管理器中。

1、窗口類型的介紹:

QMainWindow、QWidget和 QDialog三個類都是用來創(chuàng)建窗口的,可以直接使用,也可以繼承后再使用。

Main Window窗口可以包含菜單欄、工具欄、狀態(tài)欄、標(biāo)題欄等,是最常見的窗口形式,也可以說是GUI程序的主窗口。

QDialog是對話框窗口的基類。對話框主要用來執(zhí)行短期任務(wù),或者與用戶進(jìn)行互動,它可以是模態(tài)的,也可以是非模態(tài)的。QDialog窗口沒有菜單欄、工具欄、狀態(tài)欄等。

如果是主窗口,就使用QMainWindow類;如果是對話框,就使用QDialog類;如果不確定,或者有可能作為頂層窗口,也有可能嵌入到其他窗口中,那么就使用owidget類。

本節(jié)只介紹QMainWindow類,關(guān)于QWidget類與QDialog類的更詳細(xì)用法會在后續(xù)章節(jié)中進(jìn)行介紹,讀者只需要對它們有簡單的了解就行。這些內(nèi)容都非常簡單,并不需要進(jìn)行太深入的研究。

2、創(chuàng)建主窗口

如果一個窗口包含一個或多個窗口,那么這個窗口就是父窗口,被包含的窗口則是子窗口。沒有父窗口的窗口是頂層窗口,QMainWindow就是一個頂層窗口,它可以包含很多界面元素,如菜單欄、工具欄、狀態(tài)欄、子窗口等。

在PyQt中,在主窗口(QMainWindow)中會有一個控件(QWidget)占位符來占著中心窗口,可以使用setCentralWidget()來設(shè)置中心窗口。

QMainWindow繼承自QWidget類,擁有它的所有派生方法和屬性。

QMain Window類中比較重要的方法如下所示。

注意:QMain Window不能設(shè)置布局(使用setLayout()方法),因為它有自己的布局。

實例演示1:創(chuàng)建主窗口

運行程序,顯示效果如下:

代碼分析:

使用QMainWindow類的statusBar()方法創(chuàng)建狀態(tài)欄,然后使用showMessage()方法將提示信息顯示在狀態(tài)欄中,提示信息的顯示時間是5秒,5秒后狀態(tài)欄提示信息消失。

在自定義的窗口類 MainWindow中,繼承了主窗口QMainWindow類所有的屬性和方法,然后使用父類QMainWindow 的構(gòu)造函數(shù)super()初始化窗口,再設(shè)置窗口標(biāo)題,最后通過消息循環(huán)顯示窗口,狀態(tài)欄可以直接由 statusBar()產(chǎn)生,由showMessage()來顯示信息。

實例演示2:將主窗口放在屏幕中間

QMainWindow利用QDesktopWidget類來實現(xiàn)主窗口居中顯示。在主窗口初始化后,將它放在屏幕中間。其完整代碼如下:

運行代碼,顯示效果如下:

代碼分析:

該行語句用來設(shè)置QWidget 窗口的大小,寬度為370像素,高度為250像素。

該行語句用來計算顯示屏幕的大小:(screen.width()*screen.height()),其中QDesktop Widget是描述顯示屏幕的類,通過QDesktopWidget().screenGeometry()來獲得屏幕的大小。

該行語句用來獲取QWidget窗口的大小:(size.width()*size.heiget()).

該行語句將窗口移動到屏幕中間。

實例演示3:關(guān)閉主窗口

演示關(guān)閉主窗口,其完整代碼如下:

運行程序,顯示效果如下:

代碼分析:

當(dāng)單擊“關(guān)閉主窗口”按鈕后,將關(guān)閉顯示的窗口,通過以下代碼將按鈕的clicked信號與onButtonClick槽函數(shù)關(guān)聯(lián)起來。

在槽函數(shù)onButtonClick()里獲得QApplication類的對象,調(diào)用它的quit()函數(shù)來關(guān)閉窗口,在槽函數(shù)里還可以獲得發(fā)送信號的對象,在本例中發(fā)送信號對象是名字為“關(guān)閉主窗口”的按鈕控件,然后就可以通過按鈕的text()函數(shù)獲得按鈕的顯示名稱。


QMainWindow的評論 (共 條)

分享到微博請遵守國家法律
西华县| 德令哈市| 大连市| 大悟县| 惠安县| 乐清市| 秦安县| 九龙县| 桦甸市| 舒兰市| 云霄县| 庄浪县| 安陆市| 玛多县| 河北省| 龙口市| 兴安县| 都匀市| 盐源县| 洛浦县| 吉木萨尔县| 宕昌县| 文登市| 蓝山县| 巫溪县| 台前县| 舞阳县| 烟台市| 甘泉县| 垣曲县| 临漳县| 哈尔滨市| 十堰市| 建昌县| 报价| 常熟市| 永福县| 铜梁县| 柏乡县| 东莞市| 浑源县|