PyQt(Python+Qt)学习随笔:QListView的movement属性
2024-10-20 06:29:55
QListView的movement属性用于控制在视图中怎么移动数据项,其类型为枚举类型QListView.Movement,有如下取值:
- Static:对应值为0,表示数据项不能被移动
- Free:对应值为1,表示数据项可以随意移动
- Snap:对应值为2,在gridSize属性不为空的情况下表示数据项移动时会按指定网格对齐
关于以上几个取值,经老猿测试有如下补充说明:
- 当movement设置为Static时,在其前面设置的dragDropMode、dragEnabled如果是支持拖放的(即dragDropMode=DragDrop,dragEnabled=True),则这二者的值会随movement的值变化变为去掉可以拖的属性,即dragDropMode变为DropOnly,dragEnabled变为False,此时视图中的数据项不能拖动
- 当movement设置为Static时,在其后改变dragEnabled和dragDropMode值分别为True和DragDrop,movement的值不会改变,同时视图中的数据项只能拖不能放下
- 当movement设置为Free时,在其前面设置的dragDropMode、dragEnabled如果是不支持拖放的,如dragDropMode为NoDragDrop,dragEnabled为False,则这二者的值会随movement的值变化变为增加可以拖的属性,即dragDropMode变为DragOnly,dragEnabled变为True,此时视图中的数据项在dragDropMode不支持放下的情况下都可以实施拖放
- 当movement设置为Free时,在其后改变dragEnabled和dragDropMode值分别为False和NoDragDrop,movement的值不会改变,同时视图中的数据项无法拖放
- 当movement设置为Snap时,其拖放效果与Free效果相同,这个应该是老猿验证得不充分,具体情况未明
- 当设置gridSize属性并使得该值导致数据项周边的空余空间较多且在视图支持拖放操作的情况下,在数据项周边空白处放下数据时,相关的数据会添加到视图最后一行,其他地方放下与未设置gridSize相同
老猿Python,跟老猿学Python!
最新文章
- MVC使用Membership配置
- iOS 动画
- JavaScript 入门 (1)
- Servlet与JSP的区别
- Smart210学习记录-------文件操作
- JSON的转换(将JSON转换为字符串,将字符串转化为JSON)
- js中数组操作
- 第二章 使用JavaScript
- 关于asp.net的<;%#%>;的一些总结
- 面向对象的JS代码
- Nginx 负载均衡 后端服务器获取前端用户真实IP
- Unity UGUI图文混排(七) -- 下划线
- PHP全栈学习笔记16
- Python的一些高级特性以及反序列化漏洞
- java应用性能分析
- Java静态数据的初始化
- 如何用JavaScript判断dom是否有存在某class的值?
- minitab的鱼骨图的制作
- 列表选择框:wxSingleChoiceDialog
- StringUtils学习