2011-04-18 53 views
2

我正在使用Qt 4.6.3,并试图在QLineEdit上设置一些placeholder text。但是这些方法没有奏效:QLineEdit占位符文本在Qt 4.6.3中不起作用

  • 使用Qt设计师(UIC)
  • 通过代码ui->lineedit.setPlaceholderText("phtext")
  • setProperty("placeholderText","phtext")

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

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

+0

哪个平台? – 2011-05-03 22:48:06

回答

8

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

+1

奇怪...这个属性存在于4.6文档和设计器.. – yolo 2011-04-19 14:07:34

1

虽然placeholderText财产exists in 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平台。