Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


читать дальше »
Код: Выделить весь код
#include <GUIConstantsEx.au3>
#include <GUIListView.au3>
#include <WindowsConstants.au3>

Global $hListView, $iLast_LV_Index, $Form1

$Form1 = GUICreate('ListView', 400, 300)
$hListView = _GUICtrlListView_Create($Form1, '', 32, 16, 340, 260)
_GUICtrlListView_InsertColumn($hListView, 0, 'Column 1', 100)
_GUICtrlListView_AddItem($hListView, 'Row 1: Col 1', 0)
_GUICtrlListView_AddItem($hListView, 'Row 2: Col 1', 1)
_GUICtrlListView_AddItem($hListView, 'Row 3: Col 1', 2)
GUISetState()
GUIRegisterMsg($WM_NOTIFY, 'WM_NOTIFY')

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd

Func WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
    Local $hWndFrom, $iCode, $tNMHDR, $hWndListView, $tInfo

    $hWndListView = $hListView
    If Not IsHWnd($hListView) Then $hWndListView = GUICtrlGetHandle($hListView)

    $tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
    $hWndFrom = HWnd(DllStructGetData($tNMHDR, 'hWndFrom'))
    $iCode = DllStructGetData($tNMHDR, 'Code')

    Switch $hWndFrom
        Case $hWndListView
            Switch $iCode
                Case $NM_DBLCLK ;двойной клик левой кнопки мыши
                    $tInfo = DllStructCreate($tagNMITEMACTIVATE, $ilParam)
                    $iIndex = DllStructGetData($tInfo, 'Index')
                    If $iIndex <> -1 Then
                        $iLast_LV_Index = $iIndex
                        ToolTip(_GUICtrlListView_GetItemText($hListView, $iLast_LV_Index), 0, 0)
                    EndIf
                Case $NM_RCLICK ;один клик правой кнопки мыши
                    ToolTip('')
            EndSwitch
    EndSwitch

    Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_NOTIFY


Или так:
читать дальше »
Код: Выделить весь код
#include <GUIConstantsEx.au3>
#include <StructureConstants.au3>
#include <WindowsConstants.au3>

Global $hListView, $Form1

$Form1 = GUICreate('ListView', 400, 300)
$hListView = GUICtrlCreateListView('col1  |col2|col3  ', 32, 16, 340, 260)
For $i = 1 To 10
    GUICtrlCreateListViewItem('item' & $i & '|col2' & $i & '|col3' & $i, $hListView)
Next
GUISetState()
GUIRegisterMsg($WM_NOTIFY, 'WM_NOTIFY')

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd

Func WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
    Local $hWndFrom, $iCode, $tNMHDR, $hWndListView, $tInfo

    $hWndListView = $hListView
    If Not IsHWnd($hListView) Then $hWndListView = GUICtrlGetHandle($hListView)

    $tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
    $hWndFrom = HWnd(DllStructGetData($tNMHDR, 'hWndFrom'))
    $iCode = DllStructGetData($tNMHDR, 'Code')

    Switch $hWndFrom
        Case $hWndListView
            Switch $iCode
                Case $NM_DBLCLK ;двойной клик левой кнопки мыши
                    ToolTip(GUICtrlRead(GUICtrlRead($hListView)), 0, 0)
                Case $NM_RCLICK ;один клик правой кнопки мыши
                    ToolTip('')
            EndSwitch
    EndSwitch

    Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_NOTIFY

Последний раз редактировалось madmasles, 16-01-2011 в 22:58.

Это сообщение посчитали полезным следующие участники:

Отправлено: 20:24, 16-01-2011 | #2