'顯示'
,triggered=self.show)
self.quit_action=qtwidgets.qaction(
'退出'
self.tray_menu.addaction(self.show_action)
self.tray_menu.addaction(self.quit_action)
self.tray.setcontextmenu(self.tray_menu)
self.tray.show(
)def
(self)
:# 設定托盤退出即完全退出
).quit(
) self.tray.setvisible(
false
)def
event
(self, event)
:# 控制最小化按鈕
if event.
type()
== qtcore.qevent.windowstatechange and self.isminimized():
self.close(
) self.tray.show(
)else
:return
super
(window, self)
.event(event)
self.setwindowflags(qtcore.qt.windowminimizebuttonhint|qtcore.qt.windowclosebuttonhint)
# -*- coding: utf-8 -*-
import sys
import time
from pyqt5.qtcore import qthread, pyqtsignal
from qthread_example_ui import ui_form
class
mymainform
(qmainwindow, ui_form)
:def
__init__
(self, parent=
none):
super
(mymainform, self)
.__init__(parent)
self.setupui(self)
# 例項化執行緒物件
self.work = workthread(
) self.runbutton.clicked.connect(self.execute)
defexecute
(self)
:# 啟動執行緒
self.work.start(
)# 執行緒自定義訊號連線的槽函式
self.work.trigger.connect(self.display)
defdisplay
(self,
str)
:# 由於自定義訊號時自動傳遞乙個字串引數,所以在這個槽函式中要接受乙個引數
self.listwidget.additem(
str)
class
workthread
(qthread)
:# 自定義訊號物件。引數str就代表這個訊號可以傳乙個字串
trigger = pyqtsignal(
str)
def__int__
(self)
:# 初始化函式
super
(workthread, self)
.__init__(
)def
run(self)
:#重寫執行緒執行的run函式
#觸發自定義訊號
for i in
range(20
):time.sleep(1)
# 通過自定義訊號把待顯示的字串傳遞給槽函式
self.trigger.emit(
str(i)
)if __name__ ==
"__main__"
: mywin = mymainform(
) mywin.show())
)
def
center
(self)
:#獲取螢幕座標系
screen = qdesktopwidget(
). screengeometry(
)#獲取視窗座標系
size = self . geometry(
) newleft =
(screen. width(
)- size. width())
/2newtop =
(screen. height(
)- size .height())
/2self.move(newleft, newtop)
一些PyQt5相關控制項的彙總部落格
前言 最近在編寫乙個前端介面的時候用到了很多pyqt5的控制項,發現這些控制項使用起來很簡單 只要首先知道每個控制項都是什麼樣子,能夠完成什麼功能,然後匯入對應的控制項包,一句函式就可以直接生成,最後查查每個控制項的方法和事件列表,進行符合自己需求的邏輯設計就好。需要本來想自己寫乙個系列的,但是很多...
PyQt5 學習筆記
pyqt5是由一系列python模組組成。超過620個類,6000函式和方法。能在諸如unix windows和mac os等主流作業系統上執行。pyqt5有兩種證書,gpl和商業證書。pyqt5類分為很多模組,主要模組有 qtcore 包含了核心的非gui的功能。主要和時間 檔案與資料夾 各種資料...
PyQT5 學習使用 筆記 一 安裝pyQT5
之前已經學習過了qt 的 基本使用了解了 訊號和槽 的機制。由於新專案需要跨平台,所以 在視覺開發包的選擇上 選擇了opencv python,所幸 qt也有pyqt5 的包可以和 opencv python 聯合使用開發。廢話不說了 開始安裝吧。開啟cmd命令列介面輸入 pip install p...