クリップボードのデータの格納と読み取り (Visual Basic)
クリップボードは、テキストやイメージなどのデータの格納に使用できます。クリップボードはすべてのアクティブ プロセスが共有しているので、プロセス間でのデータの転送に使用できます。My.Computer.Clipboard のオブジェクトの割り当て簡単にクリップボード アクセスでき、読み書きに読み込む。
クリップボードから読み取ったり
クリップボードからテキストを読み取るために GetText のメソッドを使用します。次のコードでは、テキストを読み込み、メッセージ ボックスに表示します。この例が正しく動作するためには、クリップボードにテキストが格納されている必要があります。
MsgBox(My.Computer.Clipboard.GetText())
このコードの例は、IntelliSense コード スニペットとしても利用できます。コード スニペット ピッカーでは、これは [Windows Forms Applications] の [Clipboard] にあります。詳細については、「コード スニペット」を参照してください。
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 Applications] の [Clipboard] にあります。詳細については、「コード スニペット」を参照してください。
クリップボードに格納したアイテムは、アプリケーションの終了後も保持されます。
クリップボードに格納されているファイルの種類を決定します。
クリップボードのデータは、テキスト、オーディオ ファイル、イメージなど、さまざまな形式をとります。クリップボードに格納されているファイルの種類を判断するには、ContainsAudio、ContainsFileDropList、ContainsImage、および 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の型を含むフォーム パラメーターを使用できます。次のコードは、文字列 "This is a test string" を RTF テキストとしてクリップボードに書き込みます。
My.Computer.Clipboard.SetText("This is a test string.",
System.Windows.Forms.TextDataFormat.Rtf)
SetData メソッドを使用して、クリップボードにデータを書き込みます。この例は、DataObjectdataChunk をカスタム形式 specialFormat でクリップボードに書き込みます。
My.Computer.Clipboard.SetData("specialFormat", dataChunk)
SetAudio メソッドを使用して、オーディオ データをクリップボードに書き込みます。この例では、バイト配列 musicReader を作成し、ファイル cool.wav をその中に読み込んでから、クリップボードに書き込みます。
Dim musicReader = My.Computer.FileSystem.ReadAllBytes("cool.wav")
My.Computer.Clipboard.SetAudio(musicReader)
セキュリティに関するメモ |
---|
クリップボードには他のユーザーからもアクセス可能なので、クリップボードを使ってパスワードや極秘データなどの機密情報を格納しないでください。 |
参照
処理手順
方法: XML ファイルからオブジェクト データを読み込む (C# および Visual Basic)
方法: XML ファイルにオブジェクト データを書き込む (C# および Visual Basic)