Я работаю над менеджером по виджету как носатый в гноме. Я хочу скрыться, только мое AP мой значок приложения (отобразите все другие значки запущенных приложений) из запущенных приложений или отсюда
это - мой qml файл
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.12
Window {
id:window
visible: true
width: 500
flags: Qt.AlignLeft
height: 375
color: "transparent"
title: qsTr("Nidgets")
Timer{
interval:100
running: true
repeat: true
onTriggered: {
time.text = Qt.formatDateTime(new Date(), "hh:mm A")
date.text = Qt.formatDateTime(new Date(), "yyyy MMMM dd")
}
}
Item {
id: element1
x: 0
y: 0
width: 200
anchors.fill: parent
height: 200
focus: true
Keys.onPressed: {
if ((event.key === Qt.Key_F11) && (event.modifiers & Qt.ControlModifier)){
if(window.flags == Qt.FramelessWindowHint)
window.flags = 0
else
window.flags = Qt.FramelessWindowHint
}
}
Text {
id: date
x: 310
y: 205
color: "#ffffff"
text: Qt.formatDateTime(new Date(), "yyyy MMMM dd")
font.pixelSize: 24
}
Text {
id: time
x: 74
y: 86
color: "#ffffff"
anchors.centerIn: parent
text: Qt.formatDateTime(new Date(), "hh:mm A")
anchors.verticalCenterOffset: -45
anchors.horizontalCenterOffset: 35
font.pointSize: 75
}
}
}
мой main.py файл
import sys
from PyQt5.QtCore import QObject, QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtQuick import QQuickView
from PyQt5.QtQml import QQmlApplicationEngine
from threading import Thread
import os
import importlib
if __name__ == '__main__':
myApp = QApplication(sys.argv)
engine = QQmlApplicationEngine()
context = engine.rootContext()
context.setContextProperty("main", engine)
engine.load('main.qml')
win = engine.rootObjects()[0]
win.show()
sys.exit(myApp.exec_())
Нет, по-видимому, никакого простого способа, который выставляется пользователю. Это сводится к присвоению _NET_WM_STATE_SKIP_TASKBAR к окну.
Видят здесь на Askubuntu для нескольких возможностей внешне изменить свойства окна после того, как окно было создано. Используя devilspie будет систематически скрывать окна, которые соответствуют определенным правилам от панели задач. Определенные окна могут быть скрыты от панели задач с помощью wmctrl
. Это могло, например, быть сделано в сценарии запуска обертки.
лучший путь состоит в том, чтобы установить статус окна из кода приложения, где окно создается. Для Python это свелось бы к оператору такой как window.set_property("skip-taskbar-hint", True)
для GTK. Посмотрите здесь для нескольких подсказок: https://stackoverflow.com/questions/22256507/how-to-make-a-program-skip-the-task-bar-task-list-in-gnu-linux.