Udostępnij za pośrednictwem


Przechowywanie danych do schowka i odczytywanie ich z poziomu schowka (Visual Basic)

Schowek może służyć do przechowywania danych, takich jak tekst i obrazy. Ponieważ Schowek jest współużytkowany przez wszystkie aktywne procesy, może służyć do przesyłania danych między nimi. Obiekt My.Computer.Clipboard umożliwia łatwy dostęp do Schowka oraz odczytywanie i zapisywanie w nim.

Odczytywanie ze Schowka

GetText Użyj metody , aby odczytać tekst w Schowku. Poniższy kod odczytuje tekst i wyświetla go w polu komunikatu. Aby przykład działał poprawnie, musi być przechowywany tekst w Schowku.

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

Ten przykład kodu jest również dostępny jako fragment kodu funkcji IntelliSense. W selektorze fragmentów kodu znajduje się on w Schowku aplikacji Windows Forms.> Aby uzyskać więcej informacji, zobacz Fragmenty kodu.

GetImage Użyj metody , aby pobrać obraz ze Schowka. Ten przykład sprawdza, czy w Schowku znajduje się obraz przed pobraniem go i przypisanie go do PictureBox1elementu .

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

Ten przykład kodu jest również dostępny jako fragment kodu funkcji IntelliSense. W selektorze fragmentów kodu znajduje się on w Schowku aplikacji Windows Forms.> Aby uzyskać więcej informacji, zobacz Fragmenty kodu.

Elementy umieszczone w Schowku będą utrwalane nawet po zamknięciu aplikacji.

Określanie typu pliku przechowywanego w Schowku

Dane w Schowku mogą mieć wiele różnych form, takich jak tekst, plik dźwiękowy lub obraz. Aby określić, jaki rodzaj pliku znajduje się w Schowku, można użyć metod takich jak ContainsAudio, ContainsFileDropList, ContainsImagei ContainsText. Metodę ContainsData można użyć, jeśli masz format niestandardowy, który chcesz sprawdzić.

ContainsImage Użyj funkcji , aby określić, czy dane zawarte w Schowku są obrazem. Poniższy kod sprawdza, czy dane są odpowiednio obrazami i raportami.

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

Czyszczenie Schowka

Metoda Clear czyści Schowek. Ponieważ Schowek jest współużytkowany przez inne procesy, wyczyszczenie może mieć wpływ na te procesy.

Poniższy kod pokazuje, jak używać Clear metody .

My.Computer.Clipboard.Clear()

Zapisywanie w Schowku

SetText Użyj metody , aby zapisać tekst w Schowku. Poniższy kod zapisuje ciąg "To jest ciąg testowy" do Schowka.

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

Metoda SetText może akceptować parametr formatu zawierający typ TextDataFormat. Poniższy kod zapisuje ciąg "To jest ciąg testowy" do Schowka jako tekst RTF.

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

SetData Użyj metody , aby zapisać dane w Schowku. W tym przykładzie plik jest zapisywany DataObjectdataChunk w Schowku w formacie specialFormatniestandardowym .

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

SetAudio Użyj metody , aby zapisać dane audio w Schowku. W tym przykładzie jest tworzona tablica musicReaderbajtów , odczytuje do niego plik cool.wav , a następnie zapisuje go w Schowku.

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

Ważne

Ze względu na to, że schowek może uzyskiwać dostęp do innych użytkowników, nie należy ich używać do przechowywania poufnych informacji, takich jak hasła lub poufne dane.

Zobacz też