PyQt(Python+Qt)学习随笔:QAbstractItemView的defaultDropAction属性

QT 实现鼠标拖动(drag)和放下(drop)代码(图形操作四) 拖动的对象: #include "outlistitem.h" #include "ui_outlistitem.h" OutListItem::OutListItem(QWidget *parent) : QWidget(parent), ui(new Ui::OutListItem) { ui->setupUi(this); } OutListItem::~OutListItem() { delete ui; } void OutListItem::mo. 阅读详情

一、概述

defaultDropAction属性用于控制QAbstractItemView及其子类的实例视图中拖放时放下的默认操作。该属性的类型为枚举类型DropAction。

二、defaultDropAction取值及含义

在这里插入图片描述

三、访问方法

如果未设置该属性,则defaultDropAction默认为CopyAction。可以通过defaultDropAction()、setDefaultDropAction(DropAction)来访问和设置defaultDropAction属性。

四、补充说明

defaultDropAction属性看起来很简单,但老猿测试时发现了很多与官网文档不一致的地方,因此反复测试了好长时间,耽误了近3天时间。测试的效果在第二部分的表格中说明了。

还有几个地方要在此补充说明一下:
1、关于视图中的拖放动作,与多个属性相关,包括showDropIndicator、dragDropMode、defaultDropAction、dragEnabled、dragDropOverwriteMode,最终的拖放结果是一个属性组合作用的结果;
2、拖放时,放下时可能是在数据项之上,也可能是非数据项之上(如数据行之间、或视图开始处或最后处),拖放的结果在这两类地方可能是不同的。

老猿Python,跟老猿学Python!
Qt5.14.2 大神的拖放艺术,优雅而强大的交互体验 作为图形界面软件,良好的用户交互体验是制胜的关键。而在Qt大神们的绝世编程之道中,拖放操作无疑占据着非常重要的一席之地。它不仅操作简单直观,而且可以完成大量看似复杂的任务,是提升用户体验质量的利器。今天,就让我们一同欣赏Qt大神们在这一领域的绝妙功力吧! 阅读详情

相关推荐

Python中的QAbstractItemView控件有一个defaultDropAction属性,用于设置拖放操作的默认行为

Python中的QAbstractItemView控件有一个defaultDropAction属性,用于设置拖放操作的默认行为。接下来,我们可以通过设置defaultDropAction属性来设置列表小部件的默认放置行为。在本例中,我们将defaultDropAction属性设置为Qt.MoveAction,这表示当用户执行拖放操作时,应将项从其原始位置移动到新位置。通过使用defaultDropAction属性,我们可以轻松地控制QAbstractItemView控件的拖放操作。

. 244

第15.18节 PyQt(Python+Qt)入门学习:Model/View架构中视图Item Views父类详解

一、概述 在PyQt图形界面中,支持采用Model/View架构实现数据和界面逻辑分离,其中Model用于处理数据存储,View用于界面数据展现,当Model中的数据变化后对应界面视图自动更新,反之当View中数据进行修改之后,也支持通知Model进行数据调整。 为了快速支持Model/View架构,PyQt提供了一系列类来支持,在Qt Designer中Item Views部件栏的视图部件都是用...

老猿Python 2204

PyQt QAbstractItemView的defaultDropAction属性

然后,我们使用setDefaultDropAction方法将defaultDropAction属性设置为Qt.MoveAction,即将默认的放置动作设置为移动操作。它提供了一种在视图中显示和管理数据项的机制。defaultDropAction属性是一个枚举类型的属性,用于确定在拖放操作中的默认放置动作。总结一下,defaultDropAction属性是PyQt中QAbstractItemView类的一个属性,用于确定拖放操作的默认放置动作。这样,当用户执行拖放操作时,默认的放置动作将是移动操作。

WELL_CODER的博客 188

python qtdesigner图标按键_第15.14节 PyQt(Python+Qt)入门学习:Designer的Buttons按钮详解...

一、引言Qt Designer中的Buttons部件包括Push Button(常规按钮、一般称按钮)、Tool Button(工具按钮)、Radio Button(单选按钮)、Check Box(复选框)、Command Link Button(命令链接按钮)和Dialog Button Box(对话框按钮盒)六种类型,这六种类型的Buttons部件,都是QWidget的直接或间接子类,同时除了...

weixin_39823017的博客 2378

服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)

客户服务器遭攻击,部署的应用服务经常性被停止,服务器CPU占用居高不下,top查看如下: 可以看到第一个bash任务,占用cpu近400%,非正常的应用程序和脚本任务,多半是被植入了木马信息。 查看该进程的符号连接,发现已经是被删除的状态 /usr/bin/-bash (deleted),无法查看其启动程序的信息 查看定时任务:cat /etc/crontab,发现都是正常的应用程序定时脚本 又用 crontab -l 查看了一下,发现了异常定时任务如下,同top里的异常任务一致...

gottst0113的博客 2120

若依框架(ruoyi vue版)集成jeecg积木报表整体完整实用教程(超长篇幅耐心阅读)

若依框架(ruoyi vue版)集成jeecg积木报表整体完整实用教程,主要说明jeecg积木报表的集成、jeecg积木报表嵌入若依菜单、token权限控制,以及iframe嵌入表格等内容。

weixin_53067723的博客 4642

PyQt(Python+Qt)学习随笔:视图中类QAbstractItemView的dragDropOverwriteMode属性

一、属性的作用 dragDropOverwriteMode属性用于控制视图的拖放行为,如果其值为True,则视图中选定的数据将在拖拽数据放下时被覆盖,如果其值为False,则拖拽的数据将作为新项插入。当DropAction对应动作为拷贝时,上述拖放的源数据保持不变,而DropAction对应动作为移动数据时,上述拖放的源数据会被删除。 默认值为False,如子类QListView和QTreeVie...

老猿Python 1737

Latex下使用JabRef添加参考文献

文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结 前言 Latex可以手动添加参考文献,但文献过多时,使用JabRef软件相对方便。 提示:以下是本篇文章正文内容,下面案例可供参考 一、JabRef安装 网址:http://www.jabref.org 打开网址后,点击“Download” 进入如下页面后,选择 portable (便携版,无需安装),下载后是一压缩包,打开即可使用。 二、使用 1.创建库 ...

sz3076799的博客 3467

【翻译 + 整理】Qt拖放介绍

一、描述 拖放提供了一种简单的可视化机制,用户可以使用该机制在应用程序之间和应用程序内部传递信息。 拖放功能类似于剪贴板的剪切和粘贴机制。Qt的许多控件(如模型视图框架、图形视图框架)以及Qt Widgets和Qt Quick的编辑控件也支持拖放操作。 二、拖放相关类 这些类处理拖放以及必要的mime类型编码和解码。 QDrag:支持基于MIME的拖放数据传输 ...

友善啊,朋友的博客 1905

鸿蒙子系统解读-分布式软总线子系统初步研究(下)

鸿蒙子系统解读-分布式软总线子系统初步研究(下) 本文作者:江苏润和软件股份有限公司 郎建中 3.2. 数据传输 上一节我们看了PublishService()函数的代码实现过程。被发现端发布服务后,软总线回调发布成功的函数中,被发现端需要使用CreateSessionServer()来创建会话的服务器等待发现端的连接创建会话。下面我们就来分析CreateSessionServer()函数的实现过程。 数据传输部分的代码位于foundation/communication/services/softbus

weixin_47070198的博客 3088

Auto.js实现视频号点赞自动化

摘要:本文介绍了一个微信视频号自动化点赞的实现方案。通过定位点赞图标和数量容器,点击点赞按钮后检测点赞数变化,若发现取消点赞则自动补点。核心代码包括:1)获取点赞容器和图标;2)记录点赞前后数量;3)判断是否误取消并补点;4)循环执行点赞和滑动页面操作。该方案解决了滑动页面可能导致误取消点赞的问题,实现了自动化批量点赞功能。文章强调仅供学习参考,提醒勿滥用该技术。

分享前端工程化、AI 应用、Agent 开发与大模型实践! 2575

26. [Python GUI] PyQt5中拖放详解之拖放动作

拖放动作是指用户希望怎样处理拖放的数据,比如移动、复制、还是创建由目标到源的链接等。

hubing_hust的专栏 1万+

OpenDataLab 大模型训练数据集下载记录

大模型 训练数据集

u013558123的博客 3347

QT的拖放功能

Normal 0 false false false EN-US ZH-CN X-NONE

贝贝小巷 3579

【五分钟论文笔记】Vision Banana:图像生成器成为通用视觉学习器

图像生成训练可以像 LLM 预训练一样,让模型学习强大且通用的视觉表示感知即生成——将视觉任务输出参数化为 RGB 图像,是一种优雅且强大的统一框架视觉理解能力可以在不牺牲生成能力的情况下获得——两者可以共存于同一个模型。

专注:太空算力、AI infra、异构调度、大模型成本工程 232

雨雾天YOLOv8检测拉胯?暗通道去雾+上下文注意力双优化,mAP从58%飙到79%,暴雨也能看清车牌

室外交通监控:高速、省道的雨雾天检测,重点解决小车、货车漏检;车载ADAS系统:雨天行车时的前方车辆、行人识别,需实时性(<40ms);隧道出入口:明暗交界+雾天的复杂场景,暗通道能平衡亮度。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1380

Qt拖拽事件详解及代码实现

qt拖拽事件是一项非常常用并且非常好用的功能,拖拽实际上是一种信息传递的载体,其目的是将信息从一个对象传递给另一个对象。通过拖拽可以简化文件打开或业务操作流程,qt初学者学会拖拽事件后就可以马上开发出许多有趣的项目,本文以一个简单的示例来介绍拖拽事件功能。DragDropWidget类实现了拖拽发起对话框,主要是重写了鼠标事件函数,用于设置拖拽搭载的信息,这里就是一个字符串,实际上也可以是自定义的类或者其他对象。代码详见dragdropwidget.h及dragdropwidget.cpp。

Isana_Yashiro的博客 2169

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Qt拖拽组件与键盘事件

1.设置widget或view的拖拽和放置模式函数setDragDropMode参数说明,NoDragDrop(无拖拽和放置)、DragOnly(只允许拖拽)、DropOnly(只允许放置)、DragDrop(允许拖拽和放置)、InternalMove(只移动不复制)

hdsHDS6的博客 1031

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Qt C++拖放事件探索之旅:多方法深入解析

Qt C++拖放事件探索之旅:多方法深入解析

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 1341

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

QT常用事件

鼠标事件(QMouseEvent),如点击、移动、释放等。键盘事件(QKeyEvent),如按键按下和释放。窗口事件(QResizeEvent, QMoveEvent),当窗口大小或位置改变时。绘制事件(QPaintEvent),需要重新绘制部分或全部窗口时。定时器事件(QTimerEvent),定时器超时时。拖放事件(QDragEnterEvent, QDropEvent),进行拖放操作时。焦点事件(QFocusEvent),当部件获得或失去键盘焦点时。

m晴朗的博客 2259

Qt拖放(1):拖放基本原理(QDrag类)

Qt拖放(1):拖放基本原理(QDrag类) 若对C++语法不熟悉,建议参阅《C++语法详解》一书,电子工业出版社出版,该书语法示例短小精悍,对查阅C++知识点相当方便,并对语法原理进行了透彻、深入详细的讲解,可确保读者彻底弄懂C++的原理,彻底解惑C++,使其知其然更知其所以然。此书是一本全面了解C++不可多得的案头必备图书。 本章讲解的类及继承关系如图9-1所示 9.1 拖放原理 9.1.1...

黄邦勇帅的博客 2万+

pyqt5中QListWidget自定义拖拽

这个代码不但自定义了拖拽的行为,而且自定义了QListWidgetItem的样式,自定义了一个控件然后赋值给item。我有两个list,左边的框是数据源,我希望我把左边框里的数据拖到右边时,左边的数据不删除,查了半天没有找到合适的方法,于是我在移除后又在原来的位置插入了一个item,同时我期望我新拖进来的默认放到列表最后,而不是开始。QListWidget本身就是支持拖拽的,但是可能有些时候我们想自定义一些行为和属性,这时就需要重写一下dropEvent方法。

人太健忘了,需要有个地方记录 1678

23. [Python GUI] PyQt5中的模型与视图框架-抽象视图基类QAbstractItemView

QAbstractItemView 类继承自 QAbstractScrollArea,后者又继承自 QFrame,该类是 Qt 所有视图类的基类, Qt 的所有视图都需要子类化该类。注意:该类是抽象类,因此不能创建该类的对象。

hubing_hust的专栏 1万+

QTreeWidget启用拖拽功能(同时禁用非顶部子项的拖拽功能)

【代码】QTreeWidget启用拖拽功能(同时禁用非顶部子项的拖拽功能)

qq_37377257的博客 3575

QT(4)-QAbstractItemView

该信号携带了一个QModelIndex类型的参数,表示被选择的项目的索引。如果这个属性被设置为true(默认值),如果用户在视口边缘的16个像素范围内拖动,QAbstractItemView会自动滚动视图的内容。clearSelection函数只会清除用户选择的项目,而不会清除列表视图中的所有项目。如果您希望在重置视图时保存更改,您可以重新实现此函数,提交更改,然后调用超类的实现。在项目视图中启用Tab键导航后,用户可以使用Tab键来在项目之间导航,并使用Shift + Tab键来进行反向导航。

m晴朗的博客 2342

Qt拖拽机制学习笔记

Drag 和 Drop 的学习笔记 记录对QDrag以及相关类的理解 初次接触Qt的拖放机制,在此记录下笔记以及一些未解决的问题 本次实现一个简单的文本拖放功能,但碍于对Qt事件机制的不熟悉,折腾了三天才勉强完成(惭愧) 实现拖放功能涉及几个类,包括QDrag,QDragEnterEvent,QDragMoveEvent等。 QDrag 用于支持基于MIME数据传输,继承自QObject。 ...

qq_36203083的博客 1593
上一篇: PyQt(Python+Qt)学习随笔:视图中的拖放操作注意事项
下一篇: PyQt(Python+Qt)学习随笔:QAbstractItemView的alternatingRowColors属性
LaoYuanPython
LaoYuanPython 2020年博客之星Top3 2020年博客之星Top3 领域专家: Python技术领域 领域专家: Python技术领域
博客等级 码龄8年 15万+粉丝 1324原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LaoYuanPython

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值