共用方式為


在剪貼簿儲存和讀取資料 (Visual Basic)

剪貼簿可以用來儲存資料,例如文字和影像。 因為所有使用中處理序都共用剪貼簿,所以可以使用它在這兩者之間傳輸資料。 My.Computer.Clipboard 物件可讓您輕鬆地存取剪貼簿,以及讀取和寫入它。

從剪貼簿讀取

使用 GetText 方法來讀取剪貼簿中的文字。 下列程式碼會讀取文字,並將它顯示在訊息方塊中。 必須要有文字儲存在剪貼簿上,範例才能正確執行。

MsgBox(My.Computer.Clipboard.GetText())

這個程式碼範例也可用為 IntelliSense 程式碼片段。 在程式碼片段選擇器中,它位於 [Windows Forms 應用程式] > [剪貼簿] 中。 如需詳細資訊,請參閱 Code Snippets

使用 GetImage 方法來擷取剪貼簿中的影像。 這個範例會先確認剪貼簿上是否有影像,再擷取它,並將它指派給 PictureBox1

If My.Computer.Clipboard.ContainsImage() Then
    Dim grabpicture As System.Drawing.Image
    grabpicture = My.Computer.Clipboard.GetImage()
    picturebox1.Image = grabpicture
End If

這個程式碼範例也可用為 IntelliSense 程式碼片段。 在程式碼片段選擇器中,它位於 [Windows Forms 應用程式] > [剪貼簿] 中。如需詳細資訊,請參閱程式碼片段

即使在關閉應用程式之後,還是會保留放在剪貼簿上的項目。

判斷儲存在剪貼簿中的檔案類型

剪貼簿上的資料可能會有數種不同的格式,例如文字、音訊檔或影像。 若要判斷哪一種檔案是在剪貼簿上,您可以使用例如 ContainsAudioContainsFileDropListContainsImage 以及 ContainsText 的方法。 如果您有想要檢查的自訂格式,可以使用 ContainsData 方法。

使用 ContainsImage 函式來判斷剪貼簿上所包含的資料是否為影像。 下列程式碼會確認資料是否為影像,並據此進行報告。

If My.Computer.Clipboard.ContainsImage() Then
    MsgBox("Clipboard contains an image.")
Else
    MsgBox("Clipboard does not contain an image.")
End If

清除剪貼簿

Clear 方法會清除剪貼簿。 因為其他處理序會共用剪貼簿,所以清除它可能會影響這些處理序。

下列程式碼將示範如何使用 Clear 方法。

My.Computer.Clipboard.Clear()

寫入至剪貼簿

使用 SetText 方法,將文字寫入剪貼簿。 下列程式碼會將 "This is a test string" 字串寫入至剪貼簿。

My.Computer.Clipboard.SetText("This is a test string.")

SetText 方法可以接受包含 TextDataFormat 類型的格式參數。 下列程式碼會以 RTF 文字將 "This is a test string" 字串寫入至剪貼簿。

My.Computer.Clipboard.SetText("This is a test string.", 
System.Windows.Forms.TextDataFormat.Rtf)

使用 SetData 方法,將資料寫入剪貼簿。 這個範例會以自訂格式 specialFormat,將 DataObject dataChunk 寫入至剪貼簿。

My.Computer.Clipboard.SetData("specialFormat", dataChunk)

使用 SetAudio 方法,將音訊資料寫入剪貼簿。 這個範例會建立位元組陣列 musicReader,並在其中讀入檔案 cool.wav,然後將其寫入至剪貼簿。

Dim musicReader = My.Computer.FileSystem.ReadAllBytes("cool.wav")
My.Computer.Clipboard.SetAudio(musicReader)

重要

因為其他使用者可以存取剪貼簿,所以請不要使用它來儲存機密資訊,例如密碼或機密資料。

另請參閱