PyQt是Python版本的Qt庫(kù),是最常用的跨平臺(tái)圖形界面編程框架之一。代碼不用修改,就能同時(shí)運(yùn)行在windows、linux、ios、andriod等平臺(tái)。因此,對(duì)芯片設(shè)計(jì)行業(yè)來(lái)說(shuō),既可以用來(lái)開(kāi)發(fā)大型EDA工具(通常用Qt的C++庫(kù)),也可以用來(lái)開(kāi)發(fā)公司內(nèi)部的flow工具,還可以用作應(yīng)用工程師的測(cè)試工具。所以,今天,以Linux平臺(tái)為例,來(lái)介紹一下Python Qt的基本用法。
一、安裝PyQt
我們?cè)趘env虛擬環(huán)境下安裝PyQt5,方法如下:
# 建立python虛擬環(huán)境 python3-m venvvenv # 激活虛擬環(huán)境 source./venv/bin/activate # 通過(guò)阿里云pypi鏡像安裝PyQt5庫(kù) pip3 install -i https://mirrors.aliyun.com/pypi/simple PyQt5 #查看安裝了哪些第三方庫(kù) pip3 list
最后,可以再用pip3 list來(lái)確認(rèn)安裝了哪些第三方庫(kù),如下圖所示。

二、PyQt5主要類庫(kù)的功能介紹
PyQt5中包含了很多類別的庫(kù),其中有三個(gè)庫(kù)最為常用:QtWidgets、QtGui、QtCore。
QtWidgets,我們需要的按鈕、文本框、下拉框、菜單、工具條等界面上顯示的東西都在這個(gè)庫(kù)里。
QtGui,這個(gè)庫(kù)里有各種事件的定義,比如單擊、文本框里文字改變,窗口關(guān)閉等,還包括了字體、剪貼板、調(diào)色板、圖形圖片等。
QtCore,這個(gè)庫(kù)里定義了各種數(shù)據(jù)類型、線程等非圖形界面的內(nèi)容。
三、Hello World例子
要求:我們來(lái)做一個(gè)輸入框和按鈕,點(diǎn)擊按鈕后把輸入框里的文字打印到終端。
示例代碼:
import sys
from PyQt5.QtWidgets import (QApplication,
QWidget,
QVBoxLayout,
QLineEdit,
QPushButton)
# create an app
app = QApplication(sys.argv)
# create an empty window
window = QWidget()
# create a vertical box to contain all gui components, and add vbox to window
vbox = QVBoxLayout()
window.setLayout(vbox)
# create a line edit in vbox
edit = QLineEdit()
vbox.addWidget(edit)
#defineahandlefunctionforbutton
def say_hello():
txt = edit.text()
print('Hello ' + txt)
# create a button, and connect clicked event to the handle function in vbox
button = QPushButton("Click Me")
button.clicked.connect(say_hello)
vbox.addWidget(button)
# show window and execute app
window.show()
ret = app.exec_()
# exit after the window is closed
sys.exit(ret)
執(zhí)行效果:
四、總結(jié)
本pyqt5 hello world示例,創(chuàng)建了一個(gè)文本框和一個(gè)按鈕,并且點(diǎn)擊按鈕與函數(shù)say_hello()相連。在文本框中輸入文字再點(diǎn)擊按鈕,就會(huì)在終端里打印出結(jié)果“Hello + 文本框內(nèi)容”。
本示例與其它pyqt5教程相比,并沒(méi)有使用class的寫法,而是直接用函數(shù),降低了學(xué)習(xí)門檻,更有利于初學(xué)者理解。
-
Qt
+關(guān)注
關(guān)注
2文章
317瀏覽量
40027 -
python
+關(guān)注
關(guān)注
56文章
4849瀏覽量
89223 -
圖形界面
+關(guān)注
關(guān)注
0文章
38瀏覽量
7662 -
pyqt
+關(guān)注
關(guān)注
0文章
12瀏覽量
4469 -
pyqt5
+關(guān)注
關(guān)注
0文章
25瀏覽量
3585
原文標(biāo)題:用PyQt5做圖形界面(一)Hello world
文章出處:【微信號(hào):ExASIC,微信公眾號(hào):ExASIC】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
使用PyQt5自動(dòng)初始化OpenVINO?環(huán)境出現(xiàn)報(bào)錯(cuò)怎么解決?
【Firefly RK3399試用體驗(yàn)】第二篇:PyQt5大戰(zhàn)點(diǎn)燈
利用PyQt5編輯軟件界面的簡(jiǎn)單步驟
如何使用Python配合PyQT5模塊來(lái)開(kāi)發(fā)圖形化應(yīng)用程序
魯班貓0 ubuntu20 解決python3.10安裝pyqt5
基于UC/OSII的圖形界面系統(tǒng)的設(shè)計(jì)與應(yīng)用
Linux字符界面轉(zhuǎn)圖形界面
PyQt5的中文教程電子書免費(fèi)下載
OpenCV+PyQT5開(kāi)發(fā)桌面應(yīng)用幾個(gè)重要的坑與解決
PyQT5中的QPainter類支持與圖元支持實(shí)現(xiàn)圖形繪制
如何用PyQt5做圖形界面(一)
如何用PyQt5做圖形界面(二)
Python上位機(jī)軟件圖形界面實(shí)戰(zhàn)——PyQt
使用pycharm開(kāi)發(fā)上位機(jī)配置pyqt5的環(huán)境
基于PyQT5與ONNXRUNTIME實(shí)現(xiàn)風(fēng)格遷移應(yīng)用

用PyQt5做圖形界面(一)Hello world
評(píng)論