現在クリップボードを開いているウィンドウのハンドルを取得します。
#Include <Clipboard.au3>
_ClipBoard_GetOpenWindow()
パラメータ
なし。
返し値
成功: | クリップボードを開いているウィンドウのハンドル |
失敗: | クリップボードを開いているウィンドウがない場合、ゼロ |
注意
アプリケーションまたはDLLが_ClipBoard_Open関数の呼び出し時にNULLウィンドウハンドルを指定した場合、クリップボードは開かれますがウィンドウへの関連付けはおこなわれません。その場合、_ClipBoard_GetOpenWindowは0を返します。
関連
_ClipBoard_GetOwner, _ClipBoard_Open
こちらも参照
MSDNライブラリでGetOpenClipboardWindowを検索して下さい。
例
#include <GuiConstantsEx.au3>
#include <ClipBoard.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
Global $iMemo
_Main()
Func _Main()
Local $hGUI
; GUI作成
$hGUI = GUICreate("Clipboard", 600, 400)
$iMemo = GUICtrlCreateEdit("", 2, 2, 596, 396, $WS_VSCROLL)
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
GUISetState()
; クリップボードを開く
If Not _ClipBoard_Open ($hGUI) Then _WinAPI_ShowError ("_ClipBoard_Open failed")
ShowData($hGUI)
; クリップボードを閉じる
_ClipBoard_Close ()
; ユーザーが終了させるまでループ
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc ;==>_Main
; クリップボード情報を表示
Func ShowData($hGUI)
MemoWrite("GUI handle ............: " & $hGUI)
MemoWrite("Clipboard owner .......: " & _ClipBoard_GetOwner ())
MemoWrite("Clipboard open window .: " & _ClipBoard_GetOpenWindow ())
MemoWrite("Clipboard sequence ....: " & _ClipBoard_GetSequenceNumber ())
MemoWrite()
EndFunc ;==>ShowData
; メモにメッセージを書き込む
Func MemoWrite($sMessage = "")
GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite