Function Reference

_GUICtrlListView_CreateDragImage

指定されたアイテムのドラッグ画像リストを作成します。

#Include <GuiListView.au3>
_GUICtrlListView_CreateDragImage($hWnd, $iIndex)

 

パラメータ

$hWnd コントロールのハンドル
$iIndex アイテムのゼロ始まりのインデックス

 

返し値

次のフォーマットの配列を返します。
        [0] - 成功した場合はドラッグ画像リストのハンドル。それ以外の場合は0。
        [1] - 画像の左上隅のX座標
        [2] - 画像の左上隅のY座標

 

注意

必要なくなった際は画像リストを破棄する必要があります。

 

関連

_GUICtrlListView_DrawDragImage

 


#AutoIt3Wrapper_au3check_parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GuiConstantsEx.au3>
#include <GuiListView.au3>
#include <GuiImageList.au3>

Opt('MustDeclareVars', 1)

$Debug_LV = False ; ListView関数に渡されるClassNameを調べる。動作を確認するにはTrueを設定し、他のコントロールのハンドルを使用

_Main()

Func _Main()

    Local $GUI, $hImage, $aDrag, $hListView
   
    $GUI = GUICreate("(UDF Created) ListView Create Drag Image", 400, 300)

    $hListView = _GUICtrlListView_Create($GUI, "", 2, 2, 394, 268)
    GUISetState()
   
    ; 画像をロード
    $hImage = _GUIImageList_Create()
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0xFF0000, 16, 16))
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x00FF00, 16, 16))
    _GUIImageList_Add($hImage, _GUICtrlListView_CreateSolidBitMap($hListView, 0x0000FF, 16, 16))
    _GUICtrlListView_SetImageList($hListView, $hImage, 1)

    ; 列を追加
    _GUICtrlListView_InsertColumn($hListView, 0, "Column 1", 100)
    _GUICtrlListView_InsertColumn($hListView, 1, "Column 2", 100)
    _GUICtrlListView_InsertColumn($hListView, 2, "Column 3", 100)

    ; アイテムを追加
    _GUICtrlListView_AddItem($hListView, "Red", 0)
    _GUICtrlListView_AddItem($hListView, "Green", 1)
    _GUICtrlListView_AddItem($hListView, "Blue", 2)
   
    ; ドラッグ画像を作成
    $aDrag = _GUICtrlListView_CreateDragImage($hListView, 0)
    _GUICtrlListView_DrawDragImage($hListView, $aDrag)
   
    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_MOUSEMOVE
                _GUICtrlListView_DrawDragImage($hListView, $aDrag)
            Case $GUI_EVENT_CLOSE
                ExitLoop
        EndSwitch
    WEnd
   
    ; 画像リストを破棄
    _GUIImageList_Destroy($aDrag[0])

    GUIDelete()
EndFunc   ;==>_Main