老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在<PyQt(Python+Qt)学习随笔:视图中类QAbstractItemView的dragDropOverwriteMode属性>中介绍了dragDropOverwriteMode属性,当时老猿使用并在其中提到了测试发现这个属性的覆盖存在问题,并反复测试也未找到问题的原因,这几天老猿找到了最开始的一个可以覆盖写的测试程序,与不能覆盖写的代码进行了反复比对,最后发现不是视图属性的设置问题,而…
老猿Python博文目录 老猿Python博客地址 一.属性的作用 dragDropOverwriteMode属性用于控制视图的拖放行为,如果其值为True,则视图中选定的数据将在拖拽数据放下时被覆盖,如果其值为False,则拖拽的数据将作为新项插入.当DropAction对应动作为拷贝时,上述拖放的源数据保持不变,而DropAction对应动作为移动数据时,上述拖放的源数据会被删除. 默认值为False,如子类QListView和QTreeView就是这样.而在QTableView子类中,该属…
老猿Python博文目录 老猿Python博客地址 dragEnabled属性用于控制视图是否支持拖拽,可以通过dragEnabled().setDragEnabled(bool enable)进行属性访问和设置. dragEnabled属性很简单,但老猿采用QListView和QTableView反复验证后,发现该属性实际上没有什么作用,在View内是否能拖放是由dragDropMode属性来控制的,如dragEnabled为False,dragDropMode为DragDrop,在view内…
老猿Python博文目录 老猿Python博客地址 一.概述 selectionMode属性用于控制view中操作选择数据项的模式,用于控制用户是否可以选择一个或多个数据项,以及在多个数据项选择中,选择是否必须是一个连续的范围. 二.QAbstractItemView.SelectionMode取值含义 selectionMode属性的类型为枚举类型枚举类型 QAbstractItemView.SelectionMode,对应取值及含义如下: 以上取值中,常用值为SingleSelection…
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 在<PyQt(Python+Qt)学习随笔:QWidget部件的palette属性以及ColorGroup.colorRole的用途和含义>和<PyQt(Python+Qt)学习随笔:使用QColorDialog.getColor交互设置部件的颜色>介绍了QWidget部件的palette属性.以及在应用中请用户确认颜色的方法.一般情况下,我们对部件的颜…
老猿Python博文目录 老猿Python博客地址 在<PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled和dragDropMode属性的关系>介绍了视图中dragDropMode属性对dragEnabled属性的影响,实际上除了dragDropMode属性对dragEnabled属性有影响之外,对acceptDrops属性也有类似的影响. 经老猿验证测试如下场景: 当dragDropMode设置为DragOnly.DragDrop.Intern…
老猿Python博文目录 老猿Python博客地址 在<PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled属性的困惑>中,老猿觉得dragEnabled没有什么作用,但原因没有弄明白. 今天无意中跟踪一个测试数据时,将dragEnabled属性的值取出来观察了一下,发现原来不是dragEnabled属性不起作用,而是dragDropMode设置时改变了dragEnabled属性的取值,具体来说: 当dragDropMode设置为DragOnly.…
老猿Python博文目录 老猿Python博客地址 在通过PyQt构建的图形界面中进行拖放,要成功进行拖放需要注意: 视图相关属性需要支持拖放,具体相关属性请参考<PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled属性的困惑>和<PyQt(Python+Qt)学习随笔: QAbstractItemView的dragDropMode属性> 老猿使用TableView和ListView验证,视图中提供的拖放动作是通过鼠标左键按下触发,但当…
autoFillBackground属性可以确认部件背景是否自动填充,如果自动填充,Qt会在调用Paint事件之前填充部件的背景.使用的颜色由部件调色板中的QPalette.window 角色定义(关于调色板请参考<PyQt(Python+Qt)学习随笔:Qt Designer中部件的调色板palette属性和字体font属性设置>). 此外,除非设置了WA_OpaquePaintEvent 或 WA_NoSystemBackground属性,否则窗口始终使用QPalette.Window对应…
accessibleDescription和accessibleName属性都是用于残疾人辅助阅读的,这两个属性都有国际化属性(关于国际化请参考<PyQt(Python+Qt)学习随笔:Qt Designer中部件与国际化有关的设置translatable. disambiguation和comment含义>),这2个属性都必须进行本地化语言处理. accessibleName 这是辅助阅读中显示的部件的名称,对于大多数小部件,无需设置此属性,因为Qt会调用部件相关属性显示,如按钮将显示按钮的…