2015-05-07 94 views
0

我創建了自己的項目,信號clicked,包含MouseArea。當鼠標區被點擊時,我想發出信號clicked。但沒有任何工作。 這裏是我的.qml代碼:無法在QML自定義項中發出信號項目

import QtQuick 2.4 

Item { 

    id: baseButton 

    property alias text: txt.text 
    width: txt.width 
    height: txt.height 

    signal clicked 

    onClicked : console.log("Clicked!") 

    Text { 
     id: txt 
     color: "white" 
     font.pointSize: 8 
     anchors.centerIn: parent 
    } 

    MouseArea { 
     id: mousearea 
     anchors.fill: parent 
     hoverEnabled: true 

     onEntered: { 
      txt.color = "yellow" 
      txt.font.pointSize = 15 
     } 

     onExited: { 
      txt.color = "white" 
      txt.font.pointSize = 8 
     } 

     onClicked: baseButton.clicked 
    } 
} 

我會是你的幫助,非常感謝!

回答

3

函數(哪些信號是)JS中的第一類對象,因此在沒有括號的情況下引用它們並不是錯誤。但是你需要它們才能執行該功能(即發出信號)。

所以才改變這一行:

onClicked: baseButton.clicked() 
相關問題