• 7575阅读
  • 7回复

关于输入框显示Tip提示 [复制链接]

上一主题 下一主题
离线phpqinsir
 
只看楼主 倒序阅读 楼主  发表于: 2012-12-03
最近一直致力于模仿QQ软件界面。在做到登录的时候,有一个Tip提示,让我倍感纠结。实在在网上搜索不到相关的教程。特来请教各位大侠。
QQ的输入Tip如下:




我的登录框如下:




我相信很多人都想实现这样的效果。今天,我就开此提问贴。盼做过的高手来帮助一下。谢谢了!
qtcn.org是我见过最热心的论坛,也是解决问题率最高的论坛。希望,我的问题能让更多的人少走弯路。
离线jdwx

只看该作者 1楼 发表于: 2012-12-03
回 楼主(phpqinsir) 的帖子
就用这个代替吧,只是没有那个“尖”
void QToolTip::showText ( const QPoint & pos, const QString & text, QWidget * w = 0 ) [static]
静态函数很方便的,只是大概10秒之后会自动消失。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线phpqinsir
只看该作者 2楼 发表于: 2012-12-04
回 1楼(jdwx) 的帖子
之前在网上也看到有人提议用这个。我就去了解了一下,受限太多。不能自定义。纠结很。如果能自定义这个东西该多好啊。没有尖也没关系。但是,能控制其显示与关闭就好了。因为,当鼠标放入输入框填写账号或密码的时候就自动消失。当点击登录的时候如果没有填写才触发,显示出来。
qtcn.org是我见过最热心的论坛,也是解决问题率最高的论坛。希望,我的问题能让更多的人少走弯路。
离线phpqinsir
只看该作者 3楼 发表于: 2012-12-04
看来真没几个人知道这么高级的特效怎样去实现。
qtcn.org是我见过最热心的论坛,也是解决问题率最高的论坛。希望,我的问题能让更多的人少走弯路。
离线XChinux

只看该作者 4楼 发表于: 2012-12-04
你只要知道一个基于QWidget的部件是能自己重写paintEvent()来自己画东西的(包括文字),那不就什么都解决了?所以关键在于如何做这个部件(不要通过QToolTip来实现),有两种方法:
1. 从QWidget派生个类,自己在paintEvent() 里画边框(上边有个小尖角),然后自己画里面的文字,至于怎样让边上透明,看看windowFlags(),多试验一下那些属性,多在网上或论坛里查查资料就知道了。
2. 自己用做图软件做一个那样的图片,然后用QLabel显示这个图片。

接下来,你就是控制这个部件的位置和显示了。这个通过获取编辑框的状态(是否有焦点,是否有内容等等),这个不难吧?

这不问题解决了?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线jdwx

只看该作者 5楼 发表于: 2012-12-04
看来真没几个人知道这么高级的特效怎样去实现。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线XChinux

只看该作者 6楼 发表于: 2012-12-04
这些问题,论坛里会解决的人很多,但看到了如果方便的话才会回复,不方便的话(比如我正在处理工作上的问题),那是不会转移思维来专门处理这个帖子的。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线phpqinsir
只看该作者 7楼 发表于: 2012-12-05
回 6楼(XChinux) 的帖子
大侠你的这个思路可谓一通百通啊。之前敢这样想,但是,怕是白想,就没敢试验。毕竟功力有限,错了都不知道。谢谢大侠!我去实现之后再来结贴。
qtcn.org是我见过最热心的论坛,也是解决问题率最高的论坛。希望,我的问题能让更多的人少走弯路。
快速回复
限100 字节
 
上一个 下一个