• 10183阅读
  • 13回复

请问 如何实现一个widget的自动隐藏功能? [复制链接]

上一主题 下一主题
离线hemingway
 

只看楼主 倒序阅读 楼主  发表于: 2010-04-23
比如,在桌面上有一个widget(随便什么类型),当鼠标离开它时,他就会自动隐藏,当鼠标移动到他的位置时,就会显示,就像是windows 里的菜单自动隐藏功能一样。如何实现?谢谢。
离线banyibanyi

只看该作者 1楼 发表于: 2010-04-23
你可以设定一个范围 当鼠标进入就显示  
我以前是让这个窗口半透明  当鼠标进入后不透明 感觉挺好看的  
离线tieqilin
只看该作者 2楼 发表于: 2010-04-25
学习
离线hemingway

只看该作者 3楼 发表于: 2010-04-26
能说的详细一点吗?谢谢!
离线banyibanyi

只看该作者 4楼 发表于: 2010-04-26
我也没有做过和你说的一样的效果 只是个想法
我感觉我说的挺具体的啦啊

你先获得你控件的位置pos(),然后当鼠标的焦点到这个位置里你就显示(重写鼠标时间)  出去了你就隐藏控件 就是这个意思
具体的函数你可以看看文档QWidget 感觉比较好实现的
离线csfeng13

只看该作者 5楼 发表于: 2010-04-26
做成qq那样的,当鼠标离开时,自动隐藏到屏幕外, 也就是坐标是负的,但是要显示一小部分窗体,这样你实现鼠标move事件,当鼠标在显示的那一小块上滑动时,显示窗体。可以做动态效果……
Qt 好东东,大家一起努力……
离线drylake
只看该作者 6楼 发表于: 2010-04-26
使用leaveEvent ( QEvent * ) 离开窗口事件这个槽函数,处理鼠标离开窗口之后,在槽函数处理中将窗体背景透明。
使用enterEvent ( QEvent * )进入窗口事件槽函数,处理鼠标进入窗口之后,在槽函数中讲窗体属性恢复。
离线午小夜

只看该作者 7楼 发表于: 2010-04-26
刚好写着玩 做了这个。
eg.rar (1739 K) 下载次数:141
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线fcdding

只看该作者 8楼 发表于: 2011-04-01
回 7楼(午小夜) 的帖子
很给力,下来看看了,非常感谢!!!
离线83888788
只看该作者 9楼 发表于: 2011-04-01
回 7楼(午小夜) 的帖子
很给力啊
请问版主大哥怎么只需要一个 dll  啊,能提供点思路吗?
离线83888788
只看该作者 10楼 发表于: 2011-04-02
回 7楼(午小夜) 的帖子
继续求思路
离线xlttap

只看该作者 11楼 发表于: 2011-04-02
当鼠标移开时,把它move到屏幕的边界位置就行了。
我简单我快乐
离线shaoshuai898

只看该作者 12楼 发表于: 2012-01-05
回 9楼(83888788) 的帖子
那个是编译之后形成的  目录下面有源代码的
离线昨夜星空
只看该作者 13楼 发表于: 2012-01-05
挺好
快速回复
限100 字节
 
上一个 下一个