我想隐藏一个窗口,然后再次显示它,而不会从Windows任务栏中丢失它。
Item{
ExampleItem{
id: exampleWindow
}
现在我想从任何地方打电话:
exampleWindow.hide()
它将从屏幕和任务栏中消失
稍后我希望能够致电
exampleWindow.show()
但如果我这样做,窗口将再次出现在屏幕上,但不能连接到我的windows-taskbar。这个问题有什么解决方案吗?由于该项目在后台仍处于活动状态,我不明白为什么它会在windowstaskbar上失去连接。
(当最小化此窗口时,它将显示在屏幕底部,仅显示窗口按钮)
编辑:参见图片:我希望在调用hide()之后窗口返回此组,然后再次显示show()。
EDIT2:抱歉,我无法在一个小例子中重现我的项目状态。出于任何原因,我的任务栏只会显示一个窗口,即使我创建了一个额外的窗口,它将显示在桌面上。但这是某种相同的问题。如何从mainApplication获取一个额外的窗口以显示在windowstaskbar
中EDIT3: 如果你像这样使用main.qml:
import QtQuick 2.5
import QtQuick.Window 2.2
import QtQuick.Controls 2.0
ApplicationWindow {
visible: true
width: 640
height: 480
title: "Hello World"
ExampleWindow {
id: exWin
}
}
并将您的代码(从答案)放到ExampleWindow.qml
Window {
id: root
color: 'steelblue'
visible: true
width: 1024
height: 800
Timer {
id: tim
interval: 1000
repeat: true
running: true
onTriggered: root.visible = !root.visible
}
}
比你得到我的问题。 启动应用程序时,我将在Windows10-Taskbar中显示两个窗口(多个(两个)窗口堆叠在一个组中)。如果计时器用完并隐藏了窗口,它已从屏幕和Windows-Taskbar(一个窗口,没有组)离开 当计时器再次发射时。该窗口将再次显示,但它将永远不会再显示在任务栏组中。按Windows + Tab键我无法到达窗口
答案 0 :(得分:0)
由于我没有你的例子,我只能猜测,你想要什么。 这有助于你/按预期工作吗?
Window {
id: root
color: 'steelblue'
visible: true
width: 1024
height: 800
Timer {
id: tim
interval: 1000
repeat: true
running: true
onTriggered: root.visible = !root.visible
}
}