指定したクリップボード形式のデータをクリップボードから取得します。
#Include <Clipboard.au3>
_ClipBoard_GetData([$iFormat = 1])
パラメータ
$iFormat | [オプション]クリップボード形式を指定します $CF_TEXT - テキスト形式 $CF_BITMAP - ビットマップのハンドル(HBITMAP) $CF_METAFILEPICT - メタファイル画像のハンドル(METAFILEPICT) $CF_SYLK - Microsoft Symbolic Link (SYLK) 形式 $CF_DIF - Software Arts' Data Interchange Format $CF_TIFF - タグイメージファイル形式 $CF_OEMTEXT - OEM文字セットの文字を含むテキスト形式 $CF_DIB - ビットマップビットが続くBITMAPINFO構造体 $CF_PALETTE - 色パレットのハンドル $CF_PENDATA - Pen Computingのペン拡張機能用データ $CF_RIFF - RIFF形式のオーディオデータを表します $CF_WAVE - WAVE形式のオーディオデータを表します $CF_UNICODETEXT - Unicodeテキスト形式 $CF_ENHMETAFILE - 拡張メタファイルのハンドル(HENHMETAFILE) $CF_HDROP - ファイルのリストを識別するHDROP型のハンドル $CF_LOCALE - クリップボード内のテキストに関連付けられたロケール識別子のハンドル $CF_DIBV5 - ビットマップカラーとビットマップビットが続くBITMAPV5HEADER構造体 $CF_OWNERDISPLAY - オーナー表示形式 $CF_DSPTEXT - プライベート形式に関連付けられたテキスト表示形式 $CF_DSPBITMAP - プライベート形式に関連付けられたビットマップ表示形式 $CF_DSPMETAFILEPICT - プライベート形式に関連付けられたメタファイル画像表示形式 $CF_DSPENHMETAFILE - プライベート形式に関連付けられた拡張メタファイル表示形式 |
返し値
成功: | テキストベースフォーマットのテキスト、または他の全てのフォーマットのバイナリーデータ |
@extendedにはテキストの文字数、またはバイナリのバイト数 | |
失敗: | 0 |
注意
この関数はクリップボードからデータを取得するために必要なステップの全てをおこないます。この関数はデータ形式が利用可能か確認をし、クリップボードを開き、クリップボードを閉じ、文字列形式またはバイナリ形式のいずれかの形式でデータを返します。データ型が$CF_TEXT、$CF_OEMTEXT、$CF_UNICODETEXTの場合には文字列形式、その他の型の場合にはバイナリ形式になります。クリップボードからデータを取得する上でより詳細な制御が必要な場合は_ClipBoard_GetDataExを使うとよいでしょう。
関連
_ClipBoard_GetDataEx, _ClipBoard_SetData, _ClipBoard_SetDataEx
例
#include <GuiConstantsEx.au3>
#include <ClipBoard.au3>
#include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
Global $iMemo
_Main()
Func _Main()
Local $hGUI, $btn_SetData, $btn_GetData
; GUI作成
$hGUI = GUICreate("Clipboard", 600, 450)
$iMemo = GUICtrlCreateEdit("", 2, 2, 596, 396, $WS_VSCROLL)
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
$btn_SetData = GUICtrlCreateButton("Set ClipBoard Data", 150, 410, 120, 30)
$btn_GetData = GUICtrlCreateButton("Get ClipBoard Data", 300, 410, 120, 30)
GUISetState()
; ユーザーが終了させるまでループ
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $btn_SetData
_ClipBoard_SetData ("ClipBoard Library")
Case $btn_GetData
MemoWrite(_ClipBoard_GetData ())
EndSwitch
WEnd
EndFunc ;==>_Main
; メモにメッセージを書き込む
Func MemoWrite($sMessage = "")
GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite