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 回答