2012-03-18 13 views
1

QMLでボタンを模倣したいのですが、それはcontainsMouse!containsMouseでしか機能しないのはなぜですか?OnPressedでは機能しません。手伝って頂けますか ?ありがとうございました。QMLでボタンを模倣する方法

Item { 
     id: area 
     property string str_noPressed; 
     property string str_hover; 
     property string str_pressed; 

     Image { 
      id: background 
      width: 75; height: 75 
      source: userArea.containsMouse ? str_hover : str_noPressed 

      MouseArea { 
       id: userArea 
       anchors.fill: parent 
       onClicked: {} 
       onPressed: background.source = str_pressed 
       hoverEnabled: true 
      } 
     } 
    } 

答えて

2

もちろん、ボタンを押すと、マウスも含まれます。

onPressedより優先します。お試しください:

onContainsMouseChanged: { 
    if (containsMouse && !pressed) { 
     background.source = str_pressed 
    } 
} 
+0

まずはお世話になりました..そして、私は申し訳ありません。間違っています:無効なプロパティの割り当て: "containsMouse"は読み取り専用のプロパティです。これは私のコード内の私のせいです。私はそれを更新しました。それでは? –

+0

申し訳ありません。回答が更新されました。 – Koying

関連する問題