zwierzak Posted September 28, 2010 Share Posted September 28, 2010 Hello, here is the Help's example: Select Case $msg = $listview MsgBox(0, "listview", "clicked=" & GUICtrlGetState($listview), 2) EndSelect It workns only when I click on the top column. I'd like it to work when i click on each item inside the ListView, not just the title of a column. How to do it? Link to comment Share on other sites More sharing options...
AdmiralAlkex Posted September 28, 2010 Share Posted September 28, 2010 Try the example for _GUICtrlListView_Create() .Some of my scripts: ShiftER, Codec-Control, Resolution switcher for HTC ShiftSome of my UDFs: SDL UDF, SetDefaultDllDirectories, Converting GDI+ Bitmap/Image to SDL Surface Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted September 28, 2010 Moderators Share Posted September 28, 2010 zwierzak,You have to look for double-clicks on the ListView items as the ListView eats the single-clicks to show the selection.You do it like this: expandcollapse popup#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> ; Set flag $fDblClk = False $hGUI = GUICreate("Test", 500, 500) $hLV = GUICtrlCreateListView("Col 1", 10, 10, 200, 200) $hLV_Handle = GUICtrlGetHandle(-1) For $i = 1 To 20 GUICtrlCreateListViewItem("Item " & $i, $hLV) Next GUISetState() ; Register "ListView DoubleClick" function GUIRegisterMsg($WM_NOTIFY, "WM_ListView_DoubleClick") While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE Exit EndSwitch : if the ListView was clicked If $fDblClk = True Then ; Read the item $sText = GUICtrlRead($hLV) MsgBox(0, "", "You double-clicked the ListView on Item " & $sText) ; Reset the flag $fDblClk = False EndIf WEnd ; React to double clicks on ListView Func WM_ListView_DoubleClick($hWnd, $iMsg, $wParam, $lParam) #forceref $hWnd, $iMsg, $wParam Local $tNMHDR = DllStructCreate("int;int;int", $lParam) If @error Then Return ; Is it out ListView that has been clicked? If DllStructGetData($tNMHDR, 1) = $hLV_Handle Then ; Was it a double click? If DllStructGetData($tNMHDR, 3) = $NM_DBLCLK Then ; Set the flag $fDblClk = True EndIf EndIf $tNMHDR = 0 Return $GUI_RUNDEFMSG EndFunc ;==>WM_ListView_DoubleClickIf you are not too familiar with GUIRegisterMsg, ther is a tutorial in the Wiki which you might find useful. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
zwierzak Posted September 28, 2010 Author Share Posted September 28, 2010 Your example doesn't even works for me. I double-click on an item and nothing happens. ^^ Link to comment Share on other sites More sharing options...
KaFu Posted September 28, 2010 Share Posted September 28, 2010 (edited) Exchange Local $tNMHDR = DllStructCreate("int;int;int", $lParam) with Local $tNMHDR = DllStructCreate("INT_PTR;INT_PTR;INT", $lParam) then it should work on x86 and x64... Edited September 28, 2010 by KaFu OS: Win10-22H2 - 64bit - German, AutoIt Version: 3.3.16.1, AutoIt Editor: SciTE, Website: https://funk.eu AMT - Auto-Movie-Thumbnailer (2022-Nov-26) BIC - Batch-Image-Cropper (2023-Apr-01) COP - Color Picker (2009-May-21) DCS - Dynamic Cursor Selector (2024-Feb-16) HMW - Hide my Windows (2018-Sep-16) HRC - HotKey Resolution Changer (2012-May-16) ICU - Icon Configuration Utility (2018-Sep-16) SMF - Search my Files (2023-Jun-03) - THE file info and duplicates search tool SSD - Set Sound Device (2017-Sep-16) Link to comment Share on other sites More sharing options...
zwierzak Posted September 28, 2010 Author Share Posted September 28, 2010 Thank you, now it works correctly Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted September 28, 2010 Moderators Share Posted September 28, 2010 KaFu, We need a tutorial or something about these x86/x64 differences. I am getting very lost. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now