找回密码
 立即注册
收起左侧

仿Steam 客户端界面的菜单效果

3
回复
7505
查看
[复制链接]
累计签到:4 天
连续签到:1 天
来源: 2016-11-2 18:07:50 显示全部楼层 |阅读模式
1Qter豆

想做一个类似steam 商店、库、社区、用户这样的菜单效果


图中上方的steam、视图、好友是普通的菜单,下方的商店、库、社区比较特别。
主要体现在:
       1、鼠标划过时会显示菜单,移出时,菜单消失。
       2、同时可以响应点击。如图所示,当前是“商店”页面,点击社区会跳转到社区页面。
       3、在“商店”页面,点击“商店”,可以实现菜单出现和消失的效果。

测试直接使用menu、用action、pushbutton 去setmenu来实现,但action或者button添加了按钮之后,点击就是出现按钮,triggered或者clicked事件就不再能响应。同时也很难处理鼠标滑过时菜单出现和消失的问题。

关于鼠标滑过,菜单显示/消失的效果,还尝试过用eventfilter过滤,但有一个问题,enter/hover可以响应,并且出现菜单,但菜单出现后,对应watched widget就变成了菜单,就无法响应leave事件了。

想请教下,有没有合适的方案能实现stream界面的这种效果。
或者退而求其次,先实现,鼠标划入,菜单显示,滑出时,菜单消失的效果。
感谢~


附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册
回复

使用道具 举报

尚未签到

2016-11-3 00:07:11 显示全部楼层
用QML倒是挺容易的
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2016-11-3 09:29:44 显示全部楼层
Joey_Chan 发表于 2016-11-3 00:07
用QML倒是挺容易的

稍微指点下?
QML和widget可以混合使用么
回复

使用道具 举报

尚未签到

2016-11-4 00:21:47 显示全部楼层
demongel 发表于 2016-11-3 09:29
稍微指点下?
QML和widget可以混合使用么

可以是可以,但是不推荐初学者这样用。一般要两者都很熟练才好混合用。

QML的话用Qt Quick Control组件就行了,配上自定义的样式,做的比steam漂亮都不是难事。(前提是美工了的。。)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了