PyQt5學(xué)習(xí)筆記(一): 來創(chuàng)建第一個PyQt應(yīng)用吧!

來創(chuàng)建第一個 PyQt 應(yīng)用吧!本文由Cescfangs 譯自ZetCode pyqt5系列教程 并作適當(dāng)修改。

之前用C++做過Qt的應(yīng)用,用過一次就喜歡上了Qt,但對于C++本身并不是很喜歡(當(dāng)時本寶寶還年輕??),可能是因為C++確實很難,在學(xué)習(xí)Python之后,對于PyQt開發(fā)更加感興趣。話不多說,第一篇介紹如何創(chuàng)建一個簡單的窗口。先上源代碼:

import sys
from PyQt5.QtWidgets import QApplication, QWidget


if __name__ == '__main__':
    
    app = QApplication(sys.argv)

    w = QWidget()
    w.resize(250, 150)
    w.move(300, 300)
    w.setWindowTitle('First PyQt5')
    w.show()
    
    sys.exit(app.exec_())

代碼解析:

import sys
from PyQt5.QtWidgets import QApplication, QWidget

先導(dǎo)入所需要的模塊,包括sys,PyQt5.QtWidgetsQApplicationQWidget模塊。

app = QApplication(sys.argv)

每一個PyQt5項目都需要創(chuàng)建一個QApplication對象。sys.argv則提供了命令行的一些參數(shù),這樣Python腳本就能從Shell運行,這是我們控制腳本開始運行的方式。

w = QWidget()

QWidget是所有界面的基類,這里采用默認(rèn)的構(gòu)造函數(shù)(無父對象,沒有父對象的widget也就是window)。

w.resize(250, 150)

resize函數(shù)重設(shè)了窗口的大小為250px寬,150px高。

w.move(300, 300)

move函數(shù)把窗口移動到了x=300,y=300d的坐標(biāo)位置。

w.setWindowTitle('Simple')

設(shè)置了窗口的標(biāo)題,會在窗口的標(biāo)題欄中央顯示。

w.show()

show函數(shù)讓Simple這個窗口在屏幕中顯示出來,這個窗口是先在內(nèi)存中產(chǎn)生,然后再顯示在屏幕中的。

sys.exit(app.exec_())

在開頭我們設(shè)置了這個應(yīng)用的主函數(shù),事件由此開始產(chǎn)生,主函數(shù)從窗口系統(tǒng)接受事件并傳遞給widget應(yīng)用,而當(dāng)我們使用exit()或者關(guān)閉了widget時,主函數(shù)就終止。sys.exit()確保干凈利落不留痕跡地退出。
注意到這里的代碼exec_(),exec后面還有個'_',這是因為execPython的關(guān)鍵字,為了避免沖突用了一個下短橫。最后可以看到一個簡單的窗口界面:

第一個 PyQt

需要說明的是,Qt自帶有QtDesigner設(shè)計交互界面,相比手寫界面代碼是一種更直觀的方式,在以后的學(xué)習(xí)筆記里也會介紹界面與代碼分開的方法,但是作為初學(xué),手寫一些簡單的界面是有助于理解Qt的。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • GitHub 上有一個 Awesome - XXX 系列的資源整理,資源非常豐富,涉及面非常廣。awesome-p...
    若與閱讀 19,300評論 4 417
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,716評論 25 709
  • “漁”確切的說應(yīng)該是“弓魚”,左邊為“弓”,右邊是“魚”。有典故,古國名。入口處是有一魚形玉佩雕塑。 ...
    Loveausten閱讀 507評論 0 3
  • 我是誰。 我,我是誰,我就是我,別人眼中的格格不入,自己眼中的特立獨行。 讀書不多,認(rèn)知淺薄,毛病不少,好像還審美...
    與偶為伴閱讀 219評論 0 1

友情鏈接更多精彩內(nèi)容