明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

從Windows資源管理器中拖動(dòng)文件

[摘要]這里我們主要簡(jiǎn)單的討論一下,如何從Windows資源管理器中拖動(dòng)一組文本,然后將它們拖放到一個(gè)文本框控件中就可將文件全部打開(kāi)。為了說(shuō)明這一點(diǎn),以下過(guò)程可用一個(gè)文本框控件以及OLEDragOver和O...
這里我們主要簡(jiǎn)單的討論一下,如何從Windows資源管理器中拖動(dòng)一組文本,然后將它們拖放到一個(gè)文本框控件中就可將文件全部打開(kāi)。
為了說(shuō)明這一點(diǎn),以下過(guò)程可用一個(gè)文本框控件以及OLEDragOver和OLEDragDrop事件,并用DataObject對(duì)象中的Files屬性和vbCFFiles數(shù)據(jù)格式打開(kāi)一組文本文件。

首先在Visual Basic中啟動(dòng)新的工程。向窗體添加一個(gè)文本框控件并將其OLEDropMode屬性設(shè)置為"手工"。將MultiLine屬性設(shè)置為T(mén)rue,將ScrollBars設(shè)為2-Vertical,并清除Text屬性

代碼如下:

Private Sub Text1_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Data.GetFormat(vbCFFiles) Then
        For Each vfn In Data.Files '循環(huán)打開(kāi)文件
            Open vfn For Input As #1
            Do While Not EOF(1)
                Line Input #1, linefile
                Text1 = Text1 & linefile & vbCrLf
            Loop
            Close #1
        Next vfn
    End If
End Sub

下列事件中,用GetFormat方法檢測(cè)兼容的數(shù)據(jù)格式(vbCFFiles)
Private Sub Text1_OLEDragOver(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single, State As Integer)
    If Data.GetFormat(vbCFFiles) Then
        '若數(shù)據(jù)格式正確,則把即將執(zhí)行的操作通知源
        Effect = vbDropEffectCopy And Effect '放下的結(jié)果為復(fù)制
        Exit Sub
    End If
    '若數(shù)據(jù)格式不合適,則不放下
    Effect = vbDropEffectNone
End Sub