2017-08-11 10 views
-2

Qtアプリケーションを作成しようとしていますが、ビデオと画像の表示を変更できるのは、呼び出された関数に依存します。 .qmlファイル構造の短い例があります:QMLで画像とビデオを切り替える

ApplicationWindow { 
Rectangle { 
    Rectangle { 
     id: Container 

     function dispImage(_title, _path) 
     { 
      //show imgae 
     } 
     function dispVideo(_title, _path) 
     { 
      //show video 
     } 
     Rectangle { 
      id: titleContainer 
      Text { 
       id: title 
      } 
     } 

     Rectangle { 
      id: image 
      Image { 
       id: image 

      } 
     } 
     Rectangle { 
      id: video 
      Image { 
       id: image 

      } 
     } 
    } 
} 

どちらのメカニズムを使うべきですか?これはコードから適切な関数を呼び出すことで可能ですか?

答えて

3

これを達成するにはさまざまな方法があります。

あなたはLoaderを使用し、異なるComponentを読み込むか、あなたは、単に1を非表示にし、他を表示することができますすることができます

function dispImage(_title, _path) 
    { 
     image.visible = true 
     video.visible = false 
     //... 
    } 
    function dispVideo(_title, _path) 
    { 
     image.visible = false 
     video.visible = true 
     //... 
    } 

あなたが持っているコードは、あなたが持っているどのように見て、動作する可能性がありませんしかし、同じid: image 3回、大文字で始まるIDもあります。これはQMLでも「違法」です。たぶん次回はあなたの仕事を達成するための初期の努力を実証するために作業コードを投稿してみてください。

関連する問題