python GUI庫圖形界面開發(fā)之PyQt5工具欄控件QToolBar的詳細(xì)使用方法與實例
PyQt5工具欄控件QToolBar介紹
QToolBar控件是由文本按鈕,圖標(biāo)或其他小控件按鈕組成的可移動面板,通常位于菜單欄下方
QToolBar類中的常用方法
| 方法 | 描述 |
|---|---|
| addAction() | 添加具有文本或圖標(biāo)的工具按鈕 |
| addSeperator() | 分組顯示工具按鈕 |
| addWidget() | 添加工具欄中按鈕以外的控件 |
| addToolBar() | 使用QMainWindow類的方法添加一個新的工具欄 |
| setMovable() | 工具變得可移動 |
| setOrientation() | 工具欄的方向可以設(shè)置為Qt.Horizontal或Qt.certical |
每當(dāng)單擊工具欄中的按鈕時,都將發(fā)射actionTriggered信號,另外,這個信號將關(guān)聯(lián)的QAction對象的引用發(fā)到連接的槽函數(shù)上
QToolBar使用實例
import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
class ToolBarDemo(QMainWindow):
def __init__(self,parent=None):
super(ToolBarDemo, self).__init__(parent)
#設(shè)置標(biāo)題與初始大小
self.setWindowTitle('toolbar例子')
self.resize(300,200)
#垂直布局
layout=QVBoxLayout()
#在工具欄區(qū)域添加文件工具欄
tb=self.addToolBar('File')
#添加圖形按鈕
new=QAction(QIcon('images\\new.png'),'new',self)
tb.addAction(new)
open=QAction(QIcon('images\open.png'),'open',self)
tb.addAction(open)
save=QAction(QIcon('images\save.png'),'save',self)
tb.addAction(save)
#圖形對象點擊觸發(fā)自定義槽函數(shù)
tb.actionTriggered[QAction].connect(self.toolbtnpressed)
self.setLayout(layout)
def toolbtnpressed(self,a):
#輸出,點擊地圖性按鈕
print('pressed tool button is ',a.text())
if __name__ == '__main__':
app=QApplication(sys.argv)
demo=ToolBarDemo()
demo.show()
sys.exit(app.exec_())
運行程序,顯示效果如圖

QToolBar代碼分析
在這個例子中,首先調(diào)用addToolBar()方法在工具欄區(qū)域添加文件工具欄
tb=self.addToolBar('File')
然后,添加具有文本標(biāo)題的工具按鈕,工具欄通常包含圖形按鈕,具有圖標(biāo)和名稱的QAction對象將被添加到工具欄中
new=QAction(QIcon('images\\new.png'),'new',self)
tb.addAction(new)
open=QAction(QIcon('images\open.png'),'open',self)
tb.addAction(open)
save=QAction(QIcon('images\save.png'),'save',self)
tb.addAction(save)
最后,將actionTriggered信號連接到槽函數(shù)toolbtnpressed()
tb.actionTriggered[QAction].connect(self.toolbtnpressed)
本文詳細(xì)講解了PyQt5工具欄控件QToolBar的詳細(xì)使用方法與實例,更多關(guān)于PyQt5庫控介紹請查看下面的相關(guān)鏈接
相關(guān)文章
python中concurrent.futures的具體使用
concurrent.futures是Python標(biāo)準(zhǔn)庫的一部分,提供了ThreadPoolExecutor和ProcessPoolExecutor兩種執(zhí)行器,用于管理線程池和進程池,通過這些執(zhí)行器,可以簡化多線程和多進程任務(wù)的管理,提高程序執(zhí)行效率2024-09-09
使用Python和Pillow實現(xiàn)圖片馬賽克功能
在這篇博客中,我們將探討如何使用Python創(chuàng)建一個簡單而有趣的桌面應(yīng)用程序,我們的目標(biāo)是構(gòu)建一個應(yīng)用,允許用戶選擇一張照片,然后在照片的右下角添加馬賽克效果,感興趣的小伙伴跟著小編一起來看看吧2024-08-08
PyTorch 導(dǎo)數(shù)應(yīng)用的使用教程
這篇文章主要介紹了PyTorch 導(dǎo)數(shù)應(yīng)用的使用教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Python使用技巧之實現(xiàn)Excel轉(zhuǎn)為PDF
這篇文章主要為大家詳細(xì)介紹了使用第三方Python庫Spire.XLS?for?Python?實現(xiàn)Excel轉(zhuǎn)PDF的簡單方法,文中的示例代碼講解詳細(xì),需要的可以參考下2023-11-11
python算法與數(shù)據(jù)結(jié)構(gòu)朋友圈與水杯實驗題分析實例
這篇文章主要介紹了python算法與數(shù)據(jù)結(jié)構(gòu)朋友圈與水杯實驗題分析,總的來說這并不是難題,那為什么要拿出這道題介紹?拿出這道題真正想要傳達的是解題的思路,以及不斷優(yōu)化探尋最優(yōu)解的過程。希望通過這道題能給你帶來一種解題優(yōu)化的思路2022-12-12

