这里以我的软件“文章管理系统”为例解释一下OLE拖放在VB中的应用: 在窗体中添加一个Image控件,在它的imgDrop_OLEDragDrop过程中添加如下代码: Private Sub imgDrop_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single) Dim strTmp If Data.GetFormat(15) Then Dim strFileName as String strFileName = GetFileName(Data.Files(1)) ............ End If If Data.GetFormat(1) Then Dim strContent as String strContent=Data.GetData(1) ................. End If End Sub
解释: 1、想得到被拖放的数据之前需对被拖放的数据进行类型判断,不同类型的数据不同处理。 2、常用的数据类型主要是文本、文件列表,文件列表可以使用For Each得到全部内容。 3、详细资料、数据类型列表请查阅MSDN的GetData, GetFormat的用法。
网页上的图片拖放结果得到的是缓存中的文件地址,是文件列表类型的数据。具体情况还要靠大家自己研究。
PS: Word中对网页文件进行拖放操作可以得到图像(Word应该只得到了图像的URL,然后从互联网下载该图像)及HTML格式,这是怎么实现的呢?如果大家知道请指教。
|