国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
vb.net入門——在 Windows 窗體中執(zhí)行拖放操作

vb.net入門——在 Windows 窗體中執(zhí)行拖放操作

【字體大?。?a accesskey="1" href="javascript:SetFont('12px')">小 2008-02-18 19:56 來(lái)源: 作者: 

現(xiàn)在支持鼠標(biāo)拖放的Windows應(yīng)用程序隨處可見,鼠標(biāo)拖放功能也極大地方便了用戶的操作,那么在我們的程序中添加上這么一個(gè)使用的功能是不是很難呢,其實(shí)很簡(jiǎn)單。下面我們就來(lái)看看如何實(shí)現(xiàn)鼠標(biāo)拖放。

一個(gè)拖放的過程實(shí)際上是要經(jīng)過如下步驟的:

1、拖(dragging)是通過調(diào)用源控件的DoDragDrop方法來(lái)初始化的,DoDragDrop有兩個(gè)參數(shù) data,指定將要傳送的數(shù)據(jù) allowedEffects,指定允許進(jìn)行的操作(復(fù)制或移動(dòng))這樣自動(dòng)創(chuàng)建了一個(gè)新的Dataobject對(duì)象

2、接下來(lái)就依次激發(fā)了GiveFeedBack事件。在大多數(shù)情況下,我們并不需要關(guān)心GiveFeedBack事件。然而你如果想自定義拖放過程中的鼠標(biāo)指針的話,你可以在這些地方加上你的代碼。

3、任何有AllowDrop屬性而且被設(shè)置成True的控件都是隱含的Drop對(duì)象。AllowDrop屬性可以在設(shè)計(jì)時(shí)的屬性窗口中進(jìn)行設(shè)置,也可以在Form_load事件自動(dòng)加載。

4、當(dāng)鼠標(biāo)移到某個(gè)控件時(shí),就同時(shí)激發(fā)了這個(gè)控件的DragEnter事件。GetDataPresent方法是用來(lái)確認(rèn)拖過來(lái)的數(shù)據(jù)是否適合目標(biāo)控件,Effect屬性是用來(lái)顯示適當(dāng)?shù)氖髽?biāo)指針。

5、如果用戶在有效的目標(biāo)控件上釋放鼠標(biāo),就同時(shí)激發(fā)了DragDrop事件。DragDrop事件句柄中的代碼從DataObject對(duì)象中釋放數(shù)據(jù)并把它顯示在目標(biāo)控件中。

下面我們就一個(gè)從系統(tǒng)中拖放獲得文件路徑的例子來(lái)演示下如何完成拖放的設(shè)計(jì)。

1、首先把窗體的TopMost屬性設(shè)置為True,然后在窗體中放置一個(gè)ListBox控件,并且把它的AllowDrop屬性設(shè)置為True。

2、為L(zhǎng)istBox1的DragEnter事件中添加代價(jià)代碼以確認(rèn)數(shù)據(jù)是所需要的:

Private Sub ListBox1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListBox1.DragEnter

'檢查是否是Windows文件的放置格式。

If e.Data.GetDataPresent(DataFormats.FileDrop) Then

e.Effect = DragDropEffects.All

'這里Effect屬性被設(shè)置成DragDropEffects.All,并不會(huì)影響到源數(shù)據(jù)

End If

End Sub

3、釋放鼠標(biāo),激發(fā)了DragDrop事件,然后從DataObject對(duì)象中獲取我們需要的數(shù)據(jù)

Private Sub ListBox1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListBox1.DragDrop

If e.Data.GetDataPresent(DataFormats.FileDrop) Then

Dim MyFiles() As String

Dim i As Integer

MyFiles = e.Data.GetData(DataFormats.FileDrop)

'從私有剪貼板中獲取文件的路徑

For i = 0 To MyFiles.Length - 1

ListBox1.Items.Add(MyFiles(i))

Next

End If

End Sub

4、代碼寫完了,現(xiàn)在按F5運(yùn)行,從硬盤上隨便拖放一個(gè)或者多個(gè)選定的文件,效果如下:

    本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
    打開APP,閱讀全文并永久保存 查看更多類似文章
    猜你喜歡
    類似文章
    C# 實(shí)現(xiàn)控件拖動(dòng)(DragDrop)功能簡(jiǎn)介
    【轉(zhuǎn)】C# Winform 涉及的拖放操作總結(jié)
    WinForm中拖動(dòng)文件夾到窗口組件上記錄路徑
    C# 拖放操作源碼詳解(一)
    高效辦公600招-09EXCEL的宏與VBA
    復(fù)制用戶窗體文本框里的數(shù)據(jù)
    更多類似文章 >>
    生活服務(wù)
    分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
    綁定賬號(hào)成功
    后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
    如果VIP功能使用有故障,
    可點(diǎn)擊這里聯(lián)系客服!

    聯(lián)系客服