PyQt6程序在Gnome桌面环境常驻任务栏,如何禁止该行为?
解决Gnome环境下PyQt6程序常驻任务栏的方法
该问题由Gnome窗口管理器对普通Qt窗口的默认展示规则导致,可通过修改窗口的类型标志,让窗口管理器不将其纳入任务栏显示列表,操作方法如下:
- 第一步:从
PyQt6.QtCore模块导入Qt类 - 第二步:在QWidget实例初始化完成后、调用show方法前,追加
Qt.WindowType.Tool窗口标志,保留原有默认标志避免窗口基础样式被修改
修改后的完整可运行代码如下:
import sys from PyQt6.QtWidgets import QApplication, QWidget from PyQt6.QtCore import Qt def main(): app = QApplication(sys.argv) w = QWidget() w.resize(250, 200) w.move(300, 300) # 添加工具窗口标志,避免任务栏生成对应条目 w.setWindowFlags(w.windowFlags() | Qt.WindowType.Tool) w.setWindowTitle('Simple') w.show() sys.exit(app.exec()) if __name__ == '__main__': main()
补充说明:如果是无标题栏的闪屏类场景,也可以直接使用Qt.WindowType.SplashScreen标志,同样不会触发任务栏条目生成,且自带无标题栏的样式。
内容的提问来源于stack exchange,提问作者Geekecom
相关产品推荐
相关产品推荐

