2016-05-14 6 views
0

私はこれを解決するのに多くの時間を費やしました。 textInput要素をクリックしたときに信号が必要です。 onClickedのように。 このTextInputが選択されたか、クリックされただけです。QML TextInput信号

私はもっと多くのTextInput要素を持っていますが、私は信号を出すのに現在のものだけを必要とします。私はフォーカスを使用しようとしましたが、前の要素も放出されました。

ありがとうございます。

+1

に行われる前に、あなたがMouseAreaでイベントを取得します注意してください、あなたが本当にのTextInputをクリックしたときに知っておく必要がありますか、またはあなたはそれがフォーカスされたときに知っておく必要がありますか? あなたは 'activeFocus'プロパティを以下のように聞くことができます:' onActiveFocusChanged:if(activeFocus){/ *ここで行う* /} ' – GrecKo

答えて

0

クリックするとTextAreaから信号が送信されません。クリックにのみ興味がある場合は、上にMouseAreaを追加する必要があります。 mouse.acceptedfalseに設定すると、イベントのバブルが発生し、TextInputがclickイベントを取得して処理します。取り扱いがTextInputの

TextInput { 
    // ... 

    MouseArea { 
    anchors.fill: parent 
    propagateComposedEvents: true 

    onClicked: { 
     console.log("clicked on TextInput"); 
     mouse.accepted = false; 
    } 
    } 
} 
関連する問題