Qt 接受拖放】的更多相关文章

第一步:在构造函数里面 添加拖放支持,相当于总开关(注意这里设置之后是整个窗口可以接受拖放) setAcceptDrops(true); 第二步:重写接受拖放相关的虚函数 void dragEnterEvent(QDragEnterEvent* event); void dragMoveEvent(QDragMoveEvent* event); void dragLeaveEvent(QDragLeaveEvent* event); void dropEvent(QDropEvent* even…
转自:http://my.oschina.net/voler/blog/345722 目录[-] 0. 源代码下载地址 1. 简单文件拖放 2. 复杂文件拖放 3. 通过按钮来完成列表数据的转移 4. 通过拖放文件来达到效果 1. 简单文件拖放 1. 一般情况下,编辑框可以直接接收到文件名 2. 程序效果图 2. 复杂文件拖放 1. 关键代码如下 2. 程序效果图 3. 通过按钮来完成列表数据的转移 1. 关键代码 2. 程序效果图 4. 通过拖放文件来达到效果 1. 关键代码 2. 效果图(通…
你用 Qt 我们开发的应用程序.用户拖放文件到您的 exe 在.启动应用程序,在这个时候, main() 功能参数可以接收中国.如何正确处理它?非常easy,码如下面: QTextCodec *codec = QTextCodec::codecForLocale(); QString arg = codec->toUnicode(argv[i]); 拖放时传递给应用的參数.是依照系统本地编码格式编码的. QTextCodec 的 codecForLocale() 会返回系统本地的 codec ,…
重载以下两个函数,可以实现将文本文件拖放进文本编辑器 void MainWindow::dragEnterEvent(QDragEnterEvent *event)//拖进事件 { if(event->mimeData()->hasFormat("text/uri-list")) event->acceptProposedAction(); } void MainWindow::dropEvent(QDropEvent *event)//放下事件 { QList<…
1. 文档拖放 获取文件名 mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QtGui> class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = 0); protected: void dragEnterEvent(QDragEnterEve…
acceptDrops属性表示当前部件是否接受鼠标拖放事件,鼠标拖放应该是与鼠标拖拽结合在一起的,在Qt Designer中可以通过属性acceptDrops设置部件是否接受鼠标拖放事件.如果部件接受拖放,则在鼠标拖放时,拖放事件会发送给鼠标当前光标下接受拖放的第一个部件. 如果一个部件设置了acceptDrops属性为True,则就是通知系统该部件可能接受鼠标拖放事件. 注意: 1.如果当前部件是一个桌面(windowType() == Qt.Desktop), 如果此时另一应用正在使用桌面则…
Qt 学习之路 2(52):使用拖放 豆子 2013年5月21日 Qt 学习之路 2 17条评论 拖放(Drag and Drop),通常会简称为 DnD,是现代软件开发中必不可少的一项技术.它提供了一种能够在应用程序内部甚至是应用程序之间进行信息交换的机制.操作系统与应用程序之间进行的剪贴板内容的交换,也可以被认为是拖放的一部分. 拖放其实是由两部分组成的:拖动和释放.拖动是将被拖放对象进行移动,释放是将被拖放对象放下.前者是一个按下鼠标按键并移动的过程,后者是一个松开鼠标按键的过程:通常这两…
用Qt的图形视图框架(Graphics View Framework)做了一个拼图游戏DEMO,演示了: QGraphicsView.QGraphicsScene.QGraphicsItem的基本用法 drag && drop 自定义QGraphicsItem 先来看看效果吧: 现在,来看下代码了. 项目说明 如上图所示,项目名称为qPuzzle,三个源文件,main.cpp是入口,imageitem.h和imageitem.cpp实现了: PuzzleImageItem,就是界面左上侧那…
Qt事件处理介绍 Qt平台会将系统产生的消息转换为Qt事件 Qt事件是一个QEvent的对象 Qt事件用来描述程序内部或外部发生的动作 任意的QObject对象都具备事件处理的能力 Qt常见的事件继承图如下: QInputEvent:用户输入事件 QDropEvent:用户拖放事件 QPaintEvent:描述操作系统绘制GUI动作的事件 QCloseEvent:用户关闭窗口事件 QTimerEvent:计时器事件 事件处理方式顺序 1.Qt事件产生后立即被分发到QWidget对象 2.QWid…
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 Model/View架构中的视图部件是基于模型的项视图(Item Views(Model-Based)),要求使用视图的应用必须自己创建模型,管理模型中的数据项,这种方式应用实现起来稍微有点复杂,为此在PyQt和Qt中提供了基于项的项部件(Item Widgets(Item-Based)),包括列表部件(List Widget).树部件(Tree Widget).表部件(Table Widget)…
本文适用人员:本文比较长,适合不理解Qt Designer部件属性的人员阅读或资料查找. 声明: 1.如果有人认为本文是简单的复制粘贴+翻译而成,敬请读本文最后的后记: 2.本文为老猿Python学习研究精心整理而成,禁止转载. 内容提纲 引言 概述 QWidget属性列表 Qt Designer组件属性归类 组件大小及位置控制的属性 界面响应事件控制属性 信息管理属性 外观控制属性 后记 一.引言 在Qt Designer中,提供了八大类可视化组件(也称为组件或控件,下同),分别为布局组件(L…
前话   Qt中的拽拖操作详细介绍.   Demo 图片拽拖    控件拽拖    窗口拽拖    拽托框架(高级开发)        拖放(Drag and Drop)   拖放提供了一种简单的可视机制,用户可以使用它在应用程序之间和内部传输信息.拖放的功能类似于剪贴板的剪切和粘贴机制.  本文档描述了基本的拖放机制,并概述了在自定义控件中启用该机制的方法.许多qt的控件也支持拖放操作,例如项目视图和图形视图框架,以及为qt小部件和qt quick编辑控件.有关项目视图和图形视图的详细信息,请…
Qt在界面显示窗口中起着越来越重要的作用,从而了解了下如何在Qt中显示一副图像. 该小程序主要注意一下几点: 1.工程属性中设置OpenCV的环境(包含目录和库目录,以及附加依赖项),设置Qt的环境(包含目录和库目录) 2.双击*.ui文件,用Qt设计师设置按钮属性,然后建立“信号/槽”连接,并给所要实现的功能编写一个函数名(该函数名将被用于VS自动生成的*.h和*.cpp文件中). 3.打开*.h文件,为所实现的功能添加必要的头文件(opencv.hpp, Qlabel等),然后添加私有变量(…
http://www.cnblogs.com/imlions/p/3189773.html 在开发程序的时候,为了提高用户的使用体验,或满足相关用户的功能,总是离不开拖放功能.而本文是总结winform下的常用拖放操作.主要有 1.textbox接受拖放的文件 2.listbox允许用户自定义排序 3.listbox之间的拖放 4.控件的拖放 5.console的拖放问题 用户在进行拖放操作时,经过的步骤大体如下: 例如将A中的数据拖放的B中 鼠标点击A中的数据(MouseDown)->鼠标移动…
在开发程序的时候,为了提高用户的使用体验,或满足相关用户的功能,总是离不开拖放功能.而本文是总结winform下的常用拖放操作.主要有 1.textbox接受拖放的文件2.listbox允许用户自定义排序3.listbox之间的拖放4.控件的拖放5.console的拖放问题 用户在进行拖放操作时,经过的步骤大体如下:例如将A中的数据拖放的B中鼠标点击A中的数据(MouseDown)->鼠标移动(MouseMove)->出源数据边界,即出A(DragLeave)->进入目标边界,进入B(D…
拖放对用户是非常直观.它在许多桌面应用程序,用户可以复制或只需用鼠标拖动和删除另一个窗口中移动对象从一个窗口到另一个中. 拖放操作包括以下步骤 - 声明拖放目标 创建数据对象 创建 wx.DropSource 执行拖放操作 取消或接受拖放 在wxPython中,有两个预定义拖放目标 - wx.TextDropTarget wx.FileDropTarget 许多wxPython的小部件支持拖放活动.源代码控制必须启用拖动,而目标控制必须在一个位置接受(或拒绝)拖放. 用户拖动源数据放置在目标对象…
打开QT Creator,新建一个“应用程序-Qt Widgets Application”项目: 输入名称scdc之后点击下一步. 在“构建套件”这个页面中直接点出下一步,然后再输入自己的类名DataCenter,其它不用手动改过来,QT会自动修改,如下图所示: 再点下一步,完成即可了. 这个时候直接点击左下方的“运行”按键,窗体就会出现了. 先看一看项目列表中所列的文件 这些文件分别是: datacenter.h datacenter.cpp main.cpp datacenter.ui 界…
C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节 1.Qt概述 1.1 什么是Qt Qt是一个跨平台的C++图形用户界面应用程序框架.它为应用程序开发者提供建立艺术级图形界面所需的所有功能.它是完全面向对象的,很容易扩展,并且允许真正的组件编程. 1.2 Qt的发展史 1991年 Qt最早由奇趣科技开发 1996年 进入商业领域,它也是目前流行的Linux桌面环境KDE的基础 2008年 奇趣科技被诺基亚公司收购,Qt称为诺基亚旗下的编程语言 2012年 Qt又被Dig…
Qt的简单案例--加法计算器(详细代码注释) 一.项目结构 二.项目代码 widget.h #ifndef WIDGET_H #define WIDGET_H //预编译指令, 为了避免头文件被重复包含: 如果WIDGET_H没有被定义, 那么把WIDGET_H这个词替换为空; 一直到下面#endif结束预编译 #include <QWidget> #include <QPushButton> #include <QLineEdit> #include <QLab…
使用IDropTarget接口同时支持文本和文件拖放 关于Windows的外壳扩展编程,拖放是比较简单的一种,在网上可以找到不少介绍这个技巧的文章.大部分是介绍使用MFC的COleDropTarget实现的, 我觉得一般使用COleDropTarget已经很好了,但是我习惯在一些程序模块中,完全的不使用MFC,比如纯SDK编程,还有用在ATL的时候,MFC是相当累 赘的.所以COleDropTarget在这个意义上讲不够完美. IDropTarget是系统留给支持拖放的客户程序的一个纯虚接口,事…
在 Windows 10 中,通用应用程序在桌面环境下是支持从资源管理器拖放文件打开的. 这篇博文将演示拖放图片或文本文件,并在程序中打开显示. 前台 XAML: <Page x:Class="DropDemo.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2…
看过之前设计器截图的朋友应该有印象,可能会发觉我们的设计器UI设计布局其实类似Visual studio 的设计界面,采用的是左.中.右三个区域布局.左侧为控件区域.中间为表单的画布设区域.右侧为属性区域.这样的UI设计肯定就得支持控件的拖拽设计,用户只要拖放一个控件到我们的画布上,那么画布就应该立即能够看到我们拖放的控件在画布中的位置.大小.以及一些控件自带的默认信息.不用说这样的设计对于用户来说不论在操作体验上还是设计的感官上都更加直接和方便,因为我在设计阶段就可以知道我设计后的表单在系统运…
创建Qt项目 1     创建Qt项目 2.1 使用向导创建 打开Qt Creator 界面选择 New Project或者选择菜单栏 [文件]-[新建文件或项目]菜单项 弹出New Project对话框,选择Qt Widgets Application, 选择[Choose]按钮,弹出如下对话框 设置项目名称和路径,按照向导进行下一步, 选择编译套件 向导会默认添加一个继承自CMainWindow的类,可以在此修改类的名字和基类.继续下一步 即可创建出一个Qt桌面程序. 2.2       手…
一.基于Qt设计师 1.创建一个GUI项目,选择“Qt4 Gui Application”.其中还有Empty Qt4 Project(空的工程),Qt4 Console Applicaiton(基于控制台的工程),Qt4 Gui Application(基于GUI设计的工程). 2.填写好项目名称和目录后,单击下一步可以自己添加一些功能模块.比如QtOpenGl,QtNetwork,Qtsql等等. 3.单击下一步,选择Base class(基类主要三种选择:QWidget为窗口部件,QMai…
转自:万一的博客. 原理分析: 这需要用到 ShellAPI 单元的两个函数: DragAcceptFiles.DragQueryFile; 用 DragAcceptFiles(窗口句柄, True); 以让窗口能够接受拖放; 然后就等待 WM_DROPFILES 消息, 并用 DragQueryFile 函数处理消息参数, 从而获取信息. 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classe…
框选多个item之后,用空格键可以勾选/去选多个item,效果如下图所示: http://oglop.gitbooks.io/pyqt-pyside-cookbook/list/img/checkbox_multi_toggle.gif # -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' from PyQt4.Qt import * from PyQt4.QtCore import * from PyQt4.QtGu…
转自:http://blog.csdn.net/seeground/article/details/49177387?locationNum=3&fps=1 listWidget = QListWidget() #实例化一个(item base)的列表 listWidget.addItem('dd') #添加一个项 listWidget.addItems([]) # 从序列中添加子项 listWidget.setDragEnabled(True) #设置拖拉 listWidget.sortIte…
原文链接:undefined! 相信在Windows 下面编程的很多兄弟们都不是很清楚Windows 中窗口的层次关系是怎么样的,这个东西很久已经研究过一下,后来又忘记了,今天又一次遇到了这个问题,所以便整理一下.下面就说说Windows 中桌面(Desktop)以及顶层窗口,以及子窗口之间的关系. 在Windows 的图形界面下,最基本显示信息的元素就是窗口,每一个Windows 窗口都管理着自己与其他窗口之间的关系和自身的一些信息,如:是否可见,窗口的所有者,窗口的父/子关系等等信息,当窗口…
在HTML5中,已经支持在浏览器与其他应用程序之间的数据互相拖动,同时也大大简化了有关于拖放方面的代码. 实现拖放的步骤 在HTML5中要想实现拖放操作,至少要经过两个步骤: 将想要拖放的对象元素的draggable属性设为true(draggable="true").这样才能将该元素进行拖放.另外,img元素和a元素(必须指定href属性)默认允许拖放. 编写与拖放有关的事件处理代码.关于拖放存在的几个事件如下所示. 拖放的相关事件 事件 产生事件的元素 描述 dragstart 被…
1.主要用途:使用户可以在窗体中导航网页. 2.注意:WebBrowser 控件会占用大量资源.使用完该控件后一定要调用 Dispose 方法,以便确保及时释放所有资源.必须在附加事件的同一线程上调用 Dispose 方法,该线程应始终是消息或用户界面 (UI) 线程. 3.WebBrowser 使用下面的成员可以将控件导航到特定 URL.在导航历史记录列表中向后和向前移动,还可以加载当前用户的主页和搜索页: 1.URL属性:可读.可写,用于获取或设置当前文档的 URL. WebBrowser …