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

鼠标移动小方块

3
回复
6397
查看
[复制链接]
累计签到:14 天
连续签到:1 天
来源: 2017-11-14 19:11:14 显示全部楼层 |阅读模式
1Qter豆


像上面这个效果图,方块QGraphicsRectItem,重载mousePressEvent mouseMoveEvent来实现移动,


但是有个问题,注意蓝色方块遇到红色的时候,是不会改变其颜色的,而是直接穿过去,这个怎么实现啊?

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

使用道具 举报

累计签到:742 天
连续签到:1 天
2017-11-15 14:44:41 显示全部楼层
这个是计算出来的吧,鼠标的位置是进过计算的,落在哪个方块里面,很可能就是方块被数组里面了,移动到了有颜色的就不重绘,屏幕取色不太可能,感觉!
回复

使用道具 举报

累计签到:24 天
连续签到:1 天
2017-11-16 11:20:58 显示全部楼层
做一个映射的数组,记录下哪些格子已经有方块了,鼠标控制移动方块时碰到该格就跳过。

方法可能比较笨,但应该可以实现你说的。
回复

使用道具 举报

累计签到:85 天
连续签到:1 天
2017-11-17 10:35:49 显示全部楼层
判断鼠标的位置,如果在红色区域外面,就让绿色方块跟随鼠标走,如果在红色区域里面,就返回不动作
回复

使用道具 举报

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

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