0

私のアプリケーションには、多くのQLineEditウィジェットがあります。ユーザーはそれらを編集できます。テキストをQLineEditスルーに追加すると、カーソルがある場合、押すGUIとテキストが元に戻され、テキストが含まれないことがわかりました。でコードでテキストを設定すると、メソッドでは機能しません。コードを使用しても、テキストはクリアされません。何が問題ですか?何か不足していますか?ありがとうございました。QLineEditctrl+zSetText("some text")undoctrl+zundo

4

1 に答える 1

3

undoおそらく、設定した値をSetTextデフォルトの開始値として扱う必要があると考えていますが、これは必要ありませんundo。私のように見える通常の動作。

SetText()定義は次のとおりです。

このプロパティは、行編集のテキストを保持します。このプロパティを設定すると、選択がクリアされ、元に戻す/やり直しの履歴がクリアされ、カーソルが行の終わりに移動し、変更されたプロパティがfalseにリセットされます。setText()を使用して挿入すると、テキストは検証されません。テキストはmaxLength()の長さに切り捨てられます。デフォルトでは、このプロパティには空の文字列が含まれています。setText()を呼び出すと、変更されたフラグがfalseにリセットされます。

おそらく、setModified ( bool )trueに設定すると、これが修正されます

編集:見つかった回避策:問題なくinsert(QString text)動作しundo()ます

于 2013-03-06T13:56:28.323 に答える