很多時候,剛程式開啟後有可能因為使用者操作的因素就讓正在跑的程式被蓋住了。尤其是在使用鍵盤滑鼠精靈控制的時候,如果出現這樣的囧況,那程式就會因為點擊錯誤而造成大亂的現象。
其次,筆者希望程式開啟的時候可以直接顯示一個圖示在工作列上就好了,但程式還是有繼續在運作或如果要隱藏桌面圖示呢? 簡單的說,程式還在螢幕上跑,但不想要顯示工具列上的圖示,該怎麼做呢?
使用工具
from PySide2.QtWidgets import QApplication
from PySide2.QtWidgets import *
from p3 import Ui_MainWindow
import sys
class MainWindow(QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
def main():
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main()
Part A. 讓程式永遠在畫面最上方執行
I. 先匯入QtCore中最主要的Qt 模組from PySide2.QtCore import Qt
II. 在畫面初始化的地方加入self.setWindowFlags(Qt.WindowStaysOnTopHint)
程式碼插入結果
III. 執行效果
Part B. 讓程式永遠以最小化,就是在工作列顯示圖示的方式運作中
I. 先匯入QtCore中最主要的Qt 模組from PySide2.QtCore import Qt
II. 在畫面初始化的地方加入self.setWindowFlags(Qt.WindowStaysOnBottomHint)
程式碼插入結果
III. 執行效果
[筆記] 觀察到程式開啟後就以圖示的方式在工具列上執行,但無法用滑鼠點開變成其他視窗的形式
Part C. 隱藏桌面圖示的方法
I. 先匯入QtCore中最主要的Qt 模組from PySide2.QtCore import Qt
II. 在畫面初始化的地方加入self.setWindowFlags(Qt.Tool)
程式碼插入結果
III. 執行效果
結論:
簡單的說就是修改setWindowFlags(),然後在裏頭放入不同的效果設定即可
Qt.WindowStaysOnTopHint
Qt.WindowStaysOnBottomHint
Qt.Tool
完整程式碼請參考