查看完整版本: [-- QML实现类似安卓桌面管理的功能的若干问题 --]

QTCN开发网 -> Qt QML开发 -> QML实现类似安卓桌面管理的功能的若干问题 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

方丈师兄 2018-01-28 14:15

QML实现类似安卓桌面管理的功能的若干问题

我想利用QML的MVC来实现类似安卓桌面管理的小程序,主要操作逻辑:左右滑动翻页,图标拖放换位。
滑动翻页:利用ListView中的snapMode: ListView.SnapOneItem来实现一次滑动一个页面,每一个页面中嵌入一个(4x4)的GridView,用来放置图标,也就是说ListView的每一个Item是一个4x4的GridView。布局如下(红色表示图标):
[attachment=18463]

现在布局和图标显示已经实现,滑动也可以,就是图标拖动时遇到了问题,因为如果能够点击图标,就会导致滑动翻页如果鼠标pressed点在图标上时则不会响应滑动;如果保证完整滑动翻页,则无法点击到图标触发鼠标事件。
是不是要实现完整的滑动翻页和图标鼠标事件,需要设置好层级关系,将图标至于最底层,然后判断鼠标点击图标时触动了鼠标移动事件,也就是翻页,此时应该讲鼠标事件下发给ListView,让其响应翻页动作。
本人是QML新手,不知道ListView是不是自身就有这种处理逻辑了,求高人指点!
还有就是如何识别图标的位置?

方丈师兄 2018-01-28 14:16
自己顶,顶,顶!

itlevup 2018-01-29 19:49
设计上去掉GridView,用Row和Column实现试试,或者Grid


方丈师兄 2018-02-04 22:49
去掉GridView的话,那就每一页都得加Row等布局,而不能像GridView那样根据Item的数目来自动生成页数

itlevup 2018-02-28 11:41
方丈师兄:去掉GridView的话,那就每一页都得加Row等布局,而不能像GridView那样根据Item的数目来自动生成页数 (2018-02-04 22:49) 

你自己定义一个property 名字也叫count,自己想咋动态生产就怎么生产,多爽。理解多少在于你了


查看完整版本: [-- QML实现类似安卓桌面管理的功能的若干问题 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled