• 7350阅读
  • 7回复

急!如何做出鼠标没有点击LineEdit时,显示灰色的字提示用户。鼠标点击时输入? [复制链接]

上一主题 下一主题
离线cdutherbert
 
只看楼主 倒序阅读 楼主  发表于: 2009-04-22
— 本帖被 XChinux 执行加亮操作(2009-04-23) —
现在,想在toolbar上添加一个lineEdit,鼠标没有点击的时候显示几个汉字提示并且汉字是灰色的,鼠标点击的时候输入,想做成QT Ceator中那个格式,如下图所以。
请问该如何设置lineEdit。步骤是什么?谢谢!
离线cdutherbert
只看该作者 1楼 发表于: 2009-04-22
那位高手能指点一下啊?谢谢
离线guyansrg

只看该作者 2楼 发表于: 2009-04-22
好像的写代码解决吧,仅靠单独设置属性好像不行。
离线duduqq

只看该作者 3楼 发表于: 2009-04-23
重载QLineEdit,重写enterEvent()和leaveEvent()函数
离线cdutherbert
只看该作者 4楼 发表于: 2009-04-23
试试看看。
离线cdutherbert
只看该作者 5楼 发表于: 2009-04-23
咋重写呢?直接在mianwidow类里重写就是了?
离线318065268
只看该作者 6楼 发表于: 2009-04-23
使用setEnabled(false)可以部分的达到效果,但是整个输入框都变成灰的了。而且鼠标再次点击都进不去。

也许可以之前通过设置字体,把灰色的字装进去?
然后有这个函数:int QLineEdit::cursorPositionAt ( const QPoint & pos )
Returns the cursor position under the point pos.
判断出光标是否在lineEdit里面。大概就是这方面的几个函数,应该能够做到判断光标在里面,然后就清空。
Email  rsail@126.com(私人邮箱)
QQ:   318065268
离线cdutherbert
只看该作者 7楼 发表于: 2009-04-24
还是重载QLineEdit,重写enterEvent()和leaveEvent()函数,起了效果。
快速回复
限100 字节
 
上一个 下一个