を逃れるために、私はQMLアプリケーションを構築していますし、次のように私はTextInput
コンポーネントを持っている:QMLにtextInput方法の選択を処理し、
TextInput {
id: editableTextInput
text: styleData.value
horizontalAlignment: Text.AlignLeft
verticalAlignment: Text.AlignVCenter
selectionColor: 'darkgray'
selectedTextColor: 'white'
font.pixelSize: 14
font.family: "AvantGarde-Medium"
onEditingFinished: {
// TO DO: Handle new text
}
MouseArea {
anchors.fill: parent
onClicked: {
editableTextInput.selectAll()
}
}
}
を現時点では、ユーザーがテキストをクリックしたとき、それは立っ方法は、ありますテキスト全体を選択した後、入力を開始するとテキスト全体が置き換えられますが、ユーザーにはさらに細かい制御を与えて欲しいのです。最初は、ユーザーが最初に全文を選択し、再度クリックすると、基本的に現在の位置にカーソルを置きます。また、エスケープキーは基本的に古いテキストを復元し、操作全体をキャンセルする必要があります。
これはテキスト入力の標準的な方法です。私はこれを明示的にすべてプログラムする必要があるのか、TextInput
コントロールでこの動作を取得する方法があるのだろうかと思いました。
あなたがキャプチャするキーイベントとMouseAreaをキャッチするキーQMLモジュールを使用して、それをカスタマイズするためにそれをコーディングする必要がクリック – Cits