クリップボード上のすべてのもの(画像や書式など)を含むオブジェクトを作成します。
ClipSaved := ClipboardAll(Data, Size)
ClipboardAll
自体は、Buffer
から派生したクラスです。
両方のパラメータを省略すると、クリップボードの現在の内容を取得することができます。それ以外の場合は、1つまたは両方のパラメータを指定して、与えられたバイナリクリップボードデータを含むオブジェクトを作成します。
Bufferのようなオブジェクト、またはバイナリデータのアドレスである純粋な整数。データは特定のフォーマットでなければならないので、一般的には、以前にClipboardAllを呼び出したときに発生したものです。以下の例2参照。
型:整数
使用するデータのバイト数を指定します。Dataがオブジェクトの場合は省略可能です。
型:オブジェクト
この関数は、2つのプロパティ(Bufferから継承)を持つClipboardAllオブジェクトを返す:
組込変数A_Clipboardは、プレーンテキストとして表現されたWindowsクリップボードの現在の内容を反映しますが、ClipboardAllオブジェクトを割り当てて、その内容をクリップボードに復元することができます。
ClipboardAllは、クリップボードの内容を保存して、スクリプトが一時的にクリップボードを操作に使用できるようにするために最もよく使われます。操作が完了すると、スクリプトは例1および例2に示すように、元のクリップボードの内容を復元します。
ClipboardAllがクリップボード上の1つ以上のデータオブジェクト(フォーマット)を取得できない場合、それらは省略されますが、残りのオブジェクトはすべて保存されます。
ClipWaitは、クリップボードにデータ(オプションで非テキストデータも含む)が含まれていることを検出するために使用することができる。
オブジェクトが含むバイナリデータは、4バイトのフォーマットタイプ、4バイトのデータブロックサイズ、そのフォーマットのデータブロックの順で構成されます。クリップボードに複数のフォーマットが含まれている場合(ほとんどの場合)、すべてのフォーマットが含まれるまで、これら3つの項目が繰り返されます。データは、4バイトのフォーマットタイプ「0」で終了します。
A_Clipboard, ClipWait, OnClipboardChange, #ClipboardTimeout, Buffer
ClipSaved := ClipboardAll() ; クリップボード全体を任意の変数に保存します。 ; ... ここで、大量のテキストを素早く貼り付けるなど、クリップボードを一時的に使用する ... A_Clipboard := ClipSaved ; 元のクリップボードを復元します。ClipboardAllではなく、A_Clipboardを使用していることに注意してください。 ClipSaved := "" ; クリップボードが非常に大きい場合に備えて、メモリを解放しています。
クリップボードにあるすべてのものを、ファイルを使って保存・復元します。
; オプション1:既存のファイルを削除し、FileAppendを使用します。 FileDelete "Company Logo.clip" FileAppend ClipboardAll(), "Company Logo.clip" ; ファイル拡張子は問いません。 ; オプション2:FileOpenを上書きモードで使用し、File.RawWriteを使用します。 ClipData := ClipboardAll() FileOpen("Company Logo.clip", "w").RawWrite(ClipData)
後でファイルをクリップボードに(または変数に)読み戻すには、次の例に従います:
ClipData := FileRead("Company Logo.clip", "RAW") ; この場合、FileReadはBufferを返します。 A_Clipboard := ClipboardAll(ClipData) ; BufferをClipboardAllに変換してアサインします。