AVIコントロールを作成します。
#Include <GuiAVI.au3>
_GUICtrlAVI_Create($hWnd[, $sFile = ""[, $subfileid = -1[, $iX = 0[, $iY = 0[, $iWidth = 0[, $iHeight = 0[, $iStyle = 0x00000006[, $iExStyle = 0x00000000]]]]]]]])
パラメータ
$hWnd | 親ウィンドウまたはオーナーウィンドウのハンドル |
$sFile | [オプション]ビデオのファイル名。.aviファイルのみサポートされています。 |
$subfileid | [オプション]使用されるサブファイルのID |
$iX | [オプション]コントロールの水平位置 |
$iY | [オプション]コントロールの垂直位置 |
$iWidth | [オプション]コントロールの幅 |
$iHeight | [オプション]コントロールの高さ |
$iStyle | [オプション]コントロールのスタイル: $ACS_CENTER - アニメーションコントロールがあるウィンドウの中央にアニメーションを配置 $ACS_TRANSPARENT - 透明背景でコントロールを作成 $ACS_AUTOPLAY - AVIクリップが開かれたらすぐにアニメーションの再生を開始 $ACS_TIMER - コントロールはスレッドを作成せずにクリップを再生 |
デフォルト: $ACS_TRANSPARENT、$ACS_AUTOPLAY 強制 : $WS_CHILD、$WS_VISIBLE |
|
$iExStyle | [オプション]コントロールの外部スタイル |
返し値
成功: | アニメーションコントロールのハンドル |
失敗: | 0 |
注意
この関数は上級ユーザー、どのようにコントロールが動作するかを学習するためのものです。
関連
_GUICtrlAVI_Destroy
例
#include <GuiConstantsEx.au3>
#include <GuiAVI.au3>
#include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
$Debug_AVI = False ; AVI関数に渡されるClassNameを調べる。動作を確認するにはTrueを設定し、他のコントロールのハンドルを使用
Global $hAVI
_Example1()
_Example2()
Func _Example1()
Local $Wow64 = ""
If @AutoItX64 Then $Wow64 = "\Wow6432Node"
Local $hGUI, $sFile = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE" & $Wow64 & "\AutoIt v3\AutoIt", "InstallDir") & "\Examples\GUI\SampleAVI.avi"
; GUI作成
$hGUI = GUICreate("(External 1) AVI Create", 300, 100)
$hAVI = _GUICtrlAVI_Create ($hGUI, $sFile, -1, 10, 10)
GUISetState()
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
; サンプルのAutoIt AVIを再生
_GUICtrlAVI_Play ($hAVI)
; ユーザーが終了するまでループ
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; AVIクリップを閉じる
_GUICtrlAVI_Close ($hAVI)
GUIDelete()
EndFunc ;==>_Example1
Func _Example2()
Local $hGUI
; GUI作成
$hGUI = GUICreate("(External 2) AVI Create", 300, 100)
$hAVI = _GUICtrlAVI_Create ($hGUI, @SystemDir & "\Shell32.dll", 150, 10, 10)
GUISetState()
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
; サンプルのAutoIt AVIを再生
_GUICtrlAVI_Play ($hAVI)
; ユーザーが終了するまでループ
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; AVIクリップを閉じる
_GUICtrlAVI_Close ($hAVI)
GUIDelete()
EndFunc ;==>_Example2
Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
Local $hWndFrom, $iIDFrom, $iCode
$hWndFrom = $ilParam
$iIDFrom = BitAND($iwParam, 0xFFFF) ; 下位ワード
$iCode = BitShift($iwParam, 16) ; 上位ワード
Switch $hWndFrom
Case $hAVI
Switch $iCode
Case $ACN_START ; アニメーションコントロールの親ウィンドウに関連付けられているAVIクリップの再生開始を通知
_DebugPrint("$ACN_START" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
"-->IDFrom:" & @TAB & $iIDFrom & @LF & _
"-->Code:" & @TAB & $iCode)
; 返し値なし
Case $ACN_STOP ; アニメーションコントロールの親ウィンドウに関連付けられているAVIクリップの再生停止を通知
_DebugPrint("$ACN_STOP" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
"-->IDFrom:" & @TAB & $iIDFrom & @LF & _
"-->Code:" & @TAB & $iCode)
; 返し値なし
EndSwitch
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc ;==>WM_COMMAND
Func _DebugPrint($s_text, $line = @ScriptLineNumber)
ConsoleWrite( _
"!===========================================================" & @LF & _
"+======================================================" & @LF & _
"-->Line(" & StringFormat("%04d", $line) & "):" & @TAB & $s_text & @LF & _
"+======================================================" & @LF)
EndFunc ;==>_DebugPrint