在做winform專案的時候有時候會用到複製貼上,在.net中提供了clipboard類來操作剪下板,我們來看下。
直接在執行裡面敲入」clipbrd「命令就可以開啟clipbrd剪下板程式。
可以直接複製一些文字,clipbrd
程式會實時的顯示出來。
關於clipboard類文字複製貼上主要使用方法:clipboard.settext、clipboard.containstext和clipboard.gettext,分別是設定文字、判斷文字存在和獲取文字。我們看個示例:
1///2
///複製
3///
4///
5///
6private
void button1_click(object
sender, eventargs e)713
14///
15///
貼上16
///17
///18
///19
private
void button2_click(object
sender, eventargs e)
20
執行結果:
上面說的是剪下板的文字複製,clipboard類也支援複製貼上,提供的靜態方法是:clipboard.setimage、clipboard.containsimage和clipboard.getimage,複製貼上的使用方法和文字複製貼上一樣,參考上面的**就行。getimage方法返回的是image物件。
平常我們複製貼上都是ctrl+c/ctrl+v,但是這種操作會比較繁瑣,我們想利用滑鼠就可以快速的複製貼上,這種在winform中是可以實現的,我們看下示例:
1private
void lvsource_itemdrag(object
sender, itemdrageventargs e)25
6private
void txtmessage_dragenter(object
sender, drageventargs e)710
11private
void txtmessage_dragdrop(object
sender, drageventargs e)
12
我們做的示例是拖放listview中的項複製到textbox中,lvsource_itemdrag事件在拖放項時發生,lvsource.dodragdrop(e.item, dragdropeffects.copy);這句**的意思是開始拖放操作:傳遞資料(要複製的值)和設定拖放操作效果。dragdropeffects是列舉型別:
成員名稱
說明all
copy 、move 和 scroll 效果的組合。
copy
將拖動源中的資料複製到放置目標。
link
將拖動源中的資料鏈接到放置目標。
move
將拖動源的資料移動到放置目標。
none
放置目標不接受該資料。
scroll
拖動時可以滾動目標,以定位在目標中當前不可見的某個放置位置。
txtmessage_dragenter作用就是設定目標的放置效果,如果注釋掉事件裡面的**,就會出現下面這種情況,並且值沒有複製。
txtmessage_dragdrop事件是拖放完成做的操作,從**中我們可以看出,獲取拖放的值並不是從剪下板中取的,而是通過引數傳遞,也就是一開始lvsource.dodragdrop(e.item, dragdropeffects.copy);在做拖放的時候,我們看下clipbrd.exe程式裡並沒有拖放的值。
執行結果:
剪下板和拖放複製.rar
附錄:小菜學習程式設計-winform系列(初學者)
剪下板操作 複製,剪下
copyfile.h pragma once include include include include include include using namespace std class ccopyfilesoper copyfile.cpp include stdafx.h include ...
CEGUI剪下板功能
剪下板功能實現,具體方法很簡單 分2部分 測試 在editbox裡實現剪下板 第一,字元的轉換,在editbox裡加入了2個函式,是cegui string 和 std string之間的轉換 第二,在void editbox onkeydown keyeventargs e 函式裡 通過 gets...
C 剪下板操作
複製資料至剪下板 bool copytoclipboard const char pszdata,const int ndatalen return false 從剪下板中取得資料 bool gettextfromclipboard closeclipboard return true return...