一、引子
拖拽这个动作,在桌面应用程序中是非常实用和具有很友好的交互体验的。我们常见的譬如有,将文件拖拽到某个窗口打开,或者拖拽文件到指定位置上传;在绘图软件中,选中某个模板、并拖拽到画布上,画布上变回绘制该模板的图像… 诸如此类,数不胜数。
那么,在Qt中我们是如何实现一个简单的拖拽绘图功能的呢?下面我们写个小例子进行说明。
二、知行合一,高清有码
在这个例子中,我们将程序分成了2个子模块。一个是左侧的控件列表;另一个是右侧的画板。控件列表我们选择QListWidget
来显示; 画板部分,我们采用Qt 的view/scene/item
框架,本质也是MVC
。文章来源:https://www.toymoban.com/news/detail-823358.html
这里我们拓展的说一下view/scene/item
(视图/场景/图元) 框架:文章来源地址https://www.toymoban.com/news/detail-823358.html
-
item
即我们所说的图元,图元是绘制在scene
上的; -
scene
即场景,我们也可以理解成一个画布,只不过他只负责记录绘制的数据,并不渲染和展示 -
view
即视图,也叫视口,通常用于展示和呈现 场景; - 要注意,一个
scene
可以被多个view
绑定展示。这也为多画面不同视角展示同一
到了这里,关于Qt 拖拽事件示例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!