第一個PyQt程序

這個程序雖然小,具有pyqt程序的皺型,能夠做爲一個模板使用了python

#!/usr/bin/python3
# -*- coding: utf-8 -*-

import sys
from PyQt5.QtWidgets import QApplication, QWidget

class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):
        self.setGeometry(300, 300, 300, 220)  
        self.setWindowTitle('Simple') 
        self.show()
        
        
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())  

先看運行效果:c++

import sys
from PyQt5.QtWidgets import QApplication, QWidget

兩個必要的導入app

app = QApplication(sys.argv)

每個pyqt程序必須建立一個application對象,sys.argv是命令行參數,能夠經過命令行傳參,來定製咱們的程序函數

class Example(QWidget):
    
    def __init__(self):
        super().__init__()

咱們建立一個Example類繼承QWidget類,PyQt5裏面QWidget是全部用戶界面對象的基類,全部和用戶界面相關的類都必須繼承spa

QWidget類,好比QMainWindow和QDialog等內置的窗口類都是繼承自QWidget的,這裏咱們新建一個Example類一樣要繼承QWidget類,命令行

使用super.__init__() 調用QWidget的構造函數code

self.setGeometry(300, 300, 300, 220)  
self.setWindowTitle('Simple') 

 setGeometry方法控制窗口的大小和位置,setWindowTitle設置窗口標題對象

self.show()

show方法將窗口顯示到屏幕上blog

sys.exit(app.exec_()) 

app.exec_() 進入程序主循環,事件處理開始。主循環從窗口系統接收事件並把事件發送給指定窗口,當調用app.exit()或者繼承

程序由於各類緣由被破壞後,使用sys.exit()能夠優雅的關閉程序,並通知系統程序結束

===============================================================

在上面代碼基礎上增長點東西
如今我要在這個窗口上添加一個按鈕,在添加一個輸入框

#!/usr/bin/python3
# -*- coding: utf-8 -*-

import sys
from PyQt5.QtWidgets import (QApplication, QWidget,QPushButton,
    QLineEdit)

class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):
        self.setGeometry(300, 300, 300, 220)  
        self.setWindowTitle('Simple') 
        btn = QPushButton("button",self)
        line = QLineEdit(self)
        line.move(100,100)
        self.show()
        
        
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())  

 

首先在import那句添加了兩個相關類,在initUI函數裏面添加了幾行代碼,一看就明白了 不用多說

如今你可能有這樣的疑問,若是我要添加一個單選框,複選框,時間選擇器等等,這些東西我怎麼知道在那個模塊呢?

都叫什麼名字呢?  第一個問題在個人上一篇博文中就寫了,常見功能對應在那些模塊中,大概也就知道了和窗口界面有關的都在QWidget模塊下面

好比如今你知道複選框在QWidget模塊中 ,那你就能夠打開qt文檔 找到QWidget模塊,一眼望下去你就會找到他,根據類名就能大概猜到功能

找到在哪裏就好辦了,你能夠看看這個類提供那些方法,好比上面的按鈕我沒有設置他的位置,下面的輸入框我用了move方法,你還能夠設置輸入框的寬高不是,

每個類都提供了不少方法,不少不一樣的類具備部分相同的方法,用到的時候就去查文檔,多查幾回經常使用的就記住了

最簡單的方法就是打開 Qt Creator

雖然是c++的,可是用法和python都是同樣的,只是把c++的語法改爲python方式來寫就能夠了,

相關文章
相關標籤/搜索