QLineEdit占位符文本在Qt 4.6.3中不起作用

时间:2011-04-18 14:40:28

标签: qt qt4 placeholder qlineedit

我正在使用Qt 4.6.3,并尝试在QLineEdit上设置一些placeholder text。但这些方法不起作用:

  • 使用Qt designer(uic)
  • 通过代码ui->lineedit.setPlaceholderText("phtext")
  • setProperty("placeholderText","phtext")

错误是setPlaceholderText不是QLineEdit类的成员。

这是一个bug和/或有没有办法解决它?

2 个答案:

答案 0 :(得分:8)

placeholderText属性是在Qt 4.7中引入的(参见文档),因此在Qt 4.6中不存在。

答案 1 :(得分:1)

占位符文本属性exists in Qt 4.6.3,它仅对Maemo 5版本启用:

// ### 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平台。