2

Qt 4.6.3を使用していて、QLineEditにプレースホルダーテキストを設定しようとしました。しかし、これらの方法は機能しませんでした。

  • Qtデザイナー(uic)を使用
  • コードを介してui->lineedit.setPlaceholderText("phtext")
  • setProperty("placeholderText","phtext")

エラーはsetPlaceholderText、QLineEditクラスのメンバーではないということです。

これはバグですか、および/またはそれを修正する方法はありますか?

4

2 に答える 2

8

placeholderTextプロパティは Qt 4.7 で導入されたため (ドキュメントを参照)、Qt 4.6 には存在しません。

于 2011-04-18T14:58:01.067 に答える
1

placeholderText プロパティは Qt 4.6.3に存在しますが、Maemo5 ビルドでのみ有効です。

// ### Qt 4.7: remove this #if guard
#if (QT_VERSION >= 0x407000) || defined(Q_WS_MAEMO_5)
    Q_PROPERTY(QString placeholderText READ placeholderText WRITE setPlaceholderText)
#endif

どういうわけかQtプラットフォームを混在させているようです。

于 2011-05-03T22:53:39.093 に答える