卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

實(shí)現(xiàn)拖放操作的簡(jiǎn)易教程

介紹是一種常用的編程語(yǔ)言,在本文中,我將分享如何在中實(shí)現(xiàn)拖放操作的方法,希望對(duì)大家有所幫助。在Windows用戶中,通常有兩類人,一類習(xí)慣使用鍵盤(pán)操作,而另一類則喜歡使用鼠標(biāo)操作。程序員在編寫(xiě)代碼時(shí),

介紹

是一種常用的編程語(yǔ)言,在本文中,我將分享如何在中實(shí)現(xiàn)拖放操作的方法,希望對(duì)大家有所幫助。在Windows用戶中,通常有兩類人,一類習(xí)慣使用鍵盤(pán)操作,而另一類則喜歡使用鼠標(biāo)操作。程序員在編寫(xiě)代碼時(shí),通常會(huì)為鍵盤(pán)用戶提供快捷鍵或快捷方式來(lái)方便他們使用,但往往卻忽略了鼠標(biāo)用戶的需求。因?yàn)槌绦騿T自己更傾向于使用鍵盤(pán)進(jìn)行操作,所以這種偏好是可以理解的,但是我們也應(yīng)該考慮到提供鼠標(biāo)支持。鼠標(biāo)用戶最期望的就是能夠在應(yīng)用程序中實(shí)現(xiàn)拖放操作,就像在Windows資源管理器中拖放文件或者在Word中拖放文本一樣。雖然拖放操作無(wú)處不在,但只有極少數(shù)的程序員在他們的程序中實(shí)現(xiàn)了拖放功能,最可能的原因是他們認(rèn)為實(shí)現(xiàn)拖放可能比想象的要難。

示例

本文將列舉一些在中實(shí)現(xiàn)拖放操作的示例,包括在窗體內(nèi)、窗體之間甚至應(yīng)用程序之間移動(dòng)文本、圖片或者文件的方法,以展示在中實(shí)現(xiàn)拖放操作是非常簡(jiǎn)單的。

拖放操作的過(guò)程

拖放實(shí)際上就像用鼠標(biāo)進(jìn)行復(fù)制粘貼一樣,你需要一個(gè)可以復(fù)制或移動(dòng)的源對(duì)象,還需要一個(gè)可以粘貼的目標(biāo)對(duì)象。在這兩個(gè)操作過(guò)程中,數(shù)據(jù)是保存在內(nèi)存中的。復(fù)制粘貼使用的是剪貼板,而拖放使用的是一種類似于私有剪貼板的DataObject對(duì)象。下面是典型的拖放操作的時(shí)間序列:

1. 拖放操作通過(guò)調(diào)用源控件的DoDragDrop方法來(lái)初始化,該方法有兩個(gè)參數(shù):data,指定要傳輸?shù)臄?shù)據(jù);allowedEffects,指定允許進(jìn)行的操作(復(fù)制或移動(dòng))。這樣就創(chuàng)建了一個(gè)新的DataObject對(duì)象。

2. 然后依次激發(fā)GiveFeedback事件。在大多數(shù)情況下,你不需要關(guān)注GiveFeedback事件,但如果你想自定義拖放過(guò)程中的鼠標(biāo)指針,你可以在這些事件中添加你自己的代碼。

3. 任何具有AllowDrop屬性且設(shè)置為T(mén)rue的控件都是潛在的目標(biāo)對(duì)象。AllowDrop屬性可以在設(shè)計(jì)時(shí)的屬性窗口中設(shè)置,也可以在Form_load事件中自動(dòng)加載。

4. 當(dāng)鼠標(biāo)移到某個(gè)控件上時(shí),會(huì)觸發(fā)該控件的DragEnter事件。GetDataPresent方法用于確認(rèn)拖放的數(shù)據(jù)是否適合目標(biāo)控件,Effect屬性用于顯示適當(dāng)?shù)氖髽?biāo)指針。

5. 如果用戶在有效的目標(biāo)控件上釋放鼠標(biāo),就會(huì)觸發(fā)DragDrop事件。DragDrop事件句柄中的代碼從DataObject對(duì)象中獲取數(shù)據(jù),并將其顯示在目標(biāo)控件中。

通過(guò)以上步驟,我們可以在中實(shí)現(xiàn)簡(jiǎn)單的拖放操作。希望這篇文章對(duì)您有所幫助!

標(biāo)簽: