2016-10-19 16 views
0

ウィンドウを非表示にしてから、Windowsタスクバーから削除しないで再度表示したい。hide()とshow()の呼び出し後にQML-Windowがウィンドウズ・タスクバーから消える

Item{ 
ExampleItem{ 
id: exampleWindow 
} 

今、私はどこからでも呼びたい:

exampleWindow.hide() 

それは私が

exampleWindow.show() 
を呼び出すことができるようにしたい後の時点で、画面やタスクバー

から消えます

しかし、私がそうするならば、ウィンドウは画面上に再び表示されますが、私のwindows-taskbarにconnectetdは接続されません。この問題の解決策はありますか?項目がバックグラウンドでまだアクティブなので、なぜそれがwindowstaskbarでの接続を失うのか分かりません。

(このウィンドウを最小化すると、それが唯一のウィンドウのボタンを示す画面の下部に移動します)

編集:私は(と呼ばれる非表示にした後に戻って、このグループ内のウィンドウをしたい)と:画像を参照してください。 show()をもう一度実行します。 enter image description here

EDIT2:申し訳ありませんが、私のプロジェクトの状況を小さな例で再現することはできません。デスクトップに表示される余分なウィンドウを作成したにもかかわらず、タスクバーの何らかの理由で1つのウィンドウしか表示されません。しかし、これは同じ質問のようなものです。どのように私は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(グループに積み重ねられた複数のウィンドウ)に2つのウィンドウが表示されます。タイマーが使い果たされてウィンドウが非表示になった場合は、画面とWindowsタスクバー(1つのウィンドウ、グループなし)から消えた 再びタイマーが起動します。ウィンドウは再び表示されますが、タスクバーグループに再び表示されることはありません。そして、Windows + Tabキーを押してウィンドウに到達することはできません。

+0

あなたのコードは実用的な例ではありません。どんな御用でしょうか? – derM

+0

私はそれが実行可能な例なしで答えることができると思った。しかし、私はこのための例を構築することができます... –

+0

私はそれに答えようとしますが、私は仮定することができます... – derM

答えて

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 
    } 
} 
+1

これは私の言い訳ではありません。これにあなたの時間を無駄にして申し訳ありません。私は今、簡単な例を作成することに苦労しています。私は夕方にこれをやろうとします... –

+0

OK、main.qmlを次のように書くといいです: –

関連する問題