Speichern von Daten in der Zwischenablage und Lesen von Daten aus der Zwischenablage (Visual Basic)

Die Zwischenablage kann zum Speichern von Daten, z.B. Texten und Bildern, verwendet werden. Da die Zwischenablage von allen aktiven Prozessen genutzt wird, kann sie zur Übertragung von Daten zwischen den Prozessen verwendet werden. Mit dem Objekt My.Computer.Clipboard können Sie einfach auf die Zwischenablage zugreifen, aus ihr lesen sowie in sie schreiben.

Lesen aus der Zwischenablage

Verwenden Sie die GetText-Methode, um den Text in der Zwischenablage auszulesen. Der folgende Code liest den Text aus und zeigt ihn in einem Nachrichtenfeld an. Es muss Text in der Zwischenablage gespeichert sein, damit das Beispiel richtig ausgeführt wird.

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

Dieses Codebeispiel ist auch als IntelliSense-Codeausschnitt verfügbar. Er befindet sich in der Codeausschnittauswahl unter Windows Forms-Anwendungen > Zwischenablage. Weitere Informationen finden Sie unter Codeausschnitte.

Verwenden Sie die GetImage-Methode zum Abrufen eines Bilds aus der Zwischenablage. In diesem Beispiel wird überprüft, ob ein Bild in der Zwischenablage ist, bevor es abgerufen und PictureBox1 zugewiesen wird.

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

Dieses Codebeispiel ist auch als IntelliSense-Codeausschnitt verfügbar. Es befindet sich in der Codeausschnittauswahl unter Windows Forms-Anwendungen > Zwischenablage. Weitere Informationen finden Sie unter Codeausschnitte.

Elemente, die in die Zwischenablage gelegt wurden, bleiben dort, auch nachdem die Anwendung heruntergefahren wurde.

Bestimmen des Dateityps, der in der Zwischenablage gespeichert ist

Daten in der Zwischenablage können eine Anzahl von verschiedenen Formen annehmen, z.B. eine Audiodatei oder ein Bild. Um zu ermitteln, welche Art von Datei sich in der Zwischenablage befindet, können Sie Methoden wie z.B. ContainsAudio, ContainsFileDropList, ContainsImage und ContainsText verwenden. Die ContainsData-Methode kann verwendet werden, wenn Sie ein benutzerdefiniertes Format überprüfen möchten.

Verwenden Sie die ContainsImage-Funktion, um zu bestimmen, ob die Daten in der Zwischenablage ein Bild sind. Der folgende Code überprüft, ob die Daten ein Bild sind und erstattet dementsprechend Bericht.

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

Löschen der Zwischenablage

Die Clear-Methode löscht den Inhalt der Zwischenablage. Da die Zwischenablage von anderen Prozessen gleichzeitig verwendet wird, kann sich das Löschen auf diese Prozesse auswirken.

Im folgenden Code wird die Verwendung der Clear-Methode veranschaulicht.

My.Computer.Clipboard.Clear()

In die Zwischenablage schreiben

Verwenden Sie die SetText-Methode, um Text in die Zwischenablage zu schreiben. Der folgende Code schreibt die Zeichenfolge „Das ist eine Testzeichenfolge“ in die Zwischenablage.

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

Die SetText-Methode kann einen Formatparameter akzeptieren, der einen Typ von TextDataFormat enthält. Der folgende Code schreibt die Zeichenfolge „Das ist eine Testzeichenfolge“ als RTF-Text in die Zwischenablage.

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

Verwenden Sie die SetData-Methode, um Daten in die Zwischenablage zu schreiben. In diesem Beispiel wird das DataObject``dataChunk im benutzerdefiniertem Format specialFormat in die Zwischenablage geschrieben.

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

Verwenden Sie die SetAudio-Methode, um Audiodaten in die Zwischenablage zu schreiben. In diesem Beispiel wird das Bytearray musicReader erstellt, die Datei cool.wav darin gelesen und anschließend in die Zwischenablage geschrieben.

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

Da auf die Zwischenablage von anderen Benutzern zugegriffen werden kann, verwenden Sie sie nicht, um sensible Informationen wie Passwörter oder vertrauliche Daten zu speichern.

Siehe auch

ClipboardProxy
GetAudioStream
SetDataObject
Vorgehensweise: Lesen von Objektdaten aus einer XML-Datei
Gewusst wie: Schreiben von Objektdaten in eine XML-Datei