Ich habe euch mal ein Beispiel gemacht was ich genauer meine und zwar wenn man doppelklick macht auf ListView1 dann werden unten die Daten angezeigt dies geht aber leider nicht bei ListView2
habe schon mit noch einer Func _LeftDblClick($Info) & Func WM_NOTIFY getestet aber ich bekomme es nicht hin bitte um Hilfe danke.
Habe euch mal die Daten auch mit drangehangen zum downloaden.
Spoiler anzeigen
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.0.0
Author: myName
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
[/autoit] [autoit][/autoit] [autoit]; Script Start - Add your code below here
[/autoit] [autoit][/autoit] [autoit]#include <GUIConstants.au3>
#include <GuiListView.au3>
#include <WindowsConstants.au3>
Global Const $LVM_GETITEM = $LVM_FIRST + 5
Dim $nCurCol= -1
Dim $nSortDir = 1
Dim $bSet = 0
Dim $nCol = -1
Dim $nr, $Kundendaten
Local $INI = @ScriptDir & "\data\ListView1.ini"
Local $INI_1 = @ScriptDir & "\data\ListView2.ini"
Global $aGlobal = IniReadSection($INI, "ListView1")
Global $Listview1,$Form,$lb_Global
Local $lastNum = IniRead($INI, "Numbers", "last", 0000)
Global $aGlobal_1 = IniReadSection($INI_1, "ListView2")
Global $Listview2,$Form,$lb_Global_1
Local $lastNum_1 = IniRead($INI_1, "Numbers", "last", 0000)
#cs#########################################################
Beispiele ListView1
#ce#########################################################
If Not FileExists($INI) Then
IniWrite($INI, "ListView1", 10000, "Mustermann|Löwenzahn|030/80050060")
IniWrite($INI, "edit", 10000, "")
IniWrite($INI, "ListView1", 10001, "Mustermann1|Holzbau|0177508090xxx")
IniWrite($INI, "edit", 10001, "")
IniWrite($INI, "ListView1", 10002, "Mustermann2|OBI|030/90010506082")
IniWrite($INI, "edit", 10002, "")
IniWrite($INI, "Numbers", "last", 10002)
EndIf
#cs#########################################################
Beispiele ListView2
#ce#########################################################
If Not FileExists($INI_1) Then
IniWrite($INI_1, "ListView2", 10000, "Mustermann|Hotel Adlon|+4930/80050060")
IniWrite($INI_1, "edit", 10000, "")
IniWrite($INI_1, "ListView2", 10001, "Mustermann1|Frinzkalten|+49177508090xxx")
IniWrite($INI_1, "edit", 10001, "")
IniWrite($INI_1, "ListView2", 10002, "Mustermann2|Hotel am Wörtersee|+49358/90010506082")
IniWrite($INI_1, "edit", 10002, "")
IniWrite($INI_1, "Numbers", "last", 10002)
EndIf
#Region ### START Koda GUI section ### Form=
$Form = GUICreate("Test", 625, 372, 341, 376)
$Tab1 = GUICtrlCreateTab(-1, 13, 625, 193)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("ListView1")
$ListView1 = GUICtrlCreateListView("Kundennummer |Kundenname|Firma|Telefon", 8, 48, 602, 142)
$TabSheet2 = GUICtrlCreateTabItem("ListView2")
$ListView2 = GUICtrlCreateListView("Kundennummer |Kundenname|Firma|Telefon", 8, 48, 602, 142)
$TabSheet3 = GUICtrlCreateTabItem("TabSheet3")
GUICtrlSetState(-1,$GUI_SHOW)
$ListView3 = GUICtrlCreateListView("", 8, 48, 602, 142)
GUICtrlCreateTabItem("")
$Group1 = GUICtrlCreateGroup("Info", 0, 216, 624, 137)
$Input1 = GUICtrlCreateInput("", 8, 264, 121, 21)
$Input2 = GUICtrlCreateInput("", 168, 264, 121, 21)
$Input3 = GUICtrlCreateInput("", 320, 264, 121, 21)
$Input4 = GUICtrlCreateInput("", 480, 264, 121, 21)
$Label1 = GUICtrlCreateLabel("Nummer", 8, 240, 43, 17)
$Label2 = GUICtrlCreateLabel("Kundenname", 168, 240, 67, 17)
$Label3 = GUICtrlCreateLabel("Firma", 320, 240, 29, 17)
$Button1 = GUICtrlCreateButton("Speichern ", 8, 312, 75, 25, 0)
$Button2 = GUICtrlCreateButton("Drucken", 96, 312, 75, 25, 0)
$Button3 = GUICtrlCreateButton("Löschen", 184, 312, 75, 25, 0)
$Label4 = GUICtrlCreateLabel("Telefon", 480, 240, 40, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
_FillListView()
GUISetState(@SW_SHOW,$Form)
GUIRegisterMsg($WM_NOTIFY,"WM_NOTIFY")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Func _FillListView()
_GUICtrlListView_DeleteAllItems($Listview1)
If $lastNum = 0 Then Return
For $i = 1 To UBound($aGlobal) -1
GUICtrlCreateListViewItem($aGlobal[$i][0] & '|' & $aGlobal[$i][1], $Listview1)
Next
_GUICtrlListView_DeleteAllItems($Listview2)
If $lastNum_1 = 0 Then Return
For $i = 1 To UBound($aGlobal_1) -1
GUICtrlCreateListViewItem($aGlobal_1[$i][0] & '|' & $aGlobal_1[$i][1], $Listview2)
Next
EndFunc
Func _LeftDblClick($Info)
GUICtrlSetData($Input1 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 0))
GUICtrlSetData($Input2 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 1))
GUICtrlSetData($Input3, _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 2))
GUICtrlSetData($Input4 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 3))
GUISetState(@SW_SHOW, $Form)
EndFunc
#cs
Func _LeftDblClick($Info)
GUICtrlSetData($Input1 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview2), $Info[3], 0))
;GUICtrlSetData($Combo2 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 1))
;GUICtrlSetData($Combo3, _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 2))
;GUICtrlSetData($Input4 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 3))
;GUICtrlSetData($Combo1 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 4))
;GUICtrlSetData($Combo4 , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 5))
;GUICtrlSetData($Stream , _GUICtrlListView_GetItemText(GUICtrlGetHandle($Listview1), $Info[3], 7))
;GUISetState(@SW_SHOW, $Form)
EndFunc
#ce
Func WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
Local $hWndFrom, $iIDFrom, $iCode, $tNMHDR, $hWndListView
$hWndListView = $ListView1
If Not IsHWnd($ListView1) Then $hWndListView = GUICtrlGetHandle($ListView1)
$tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
$hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
$iIDFrom = DllStructGetData($tNMHDR, "IDFrom")
$iCode = DllStructGetData($tNMHDR, "Code")
Switch $hWndFrom
Case $hWndListView
Switch $iCode
Case $NM_DBLCLK ; Sent by a list-view control when the user double-clicks an item with the left mouse button
Local $tInfo = DllStructCreate($tagNMITEMACTIVATE, $ilParam)
Local $aInfo[12] = [$hWndFrom, _
$iIDFrom, _
$iCode, _
DllStructGetData($tInfo, "Index"), _
DllStructGetData($tInfo, "SubItem"), _
DllStructGetData($tInfo, "NewState"), _
DllStructGetData($tInfo, "OldState"), _
DllStructGetData($tInfo, "Changed"), _
DllStructGetData($tInfo, "ActionX"), _
DllStructGetData($tInfo, "ActionY"), _
DllStructGetData($tInfo, "lParam"), _
DllStructGetData($tInfo, "KeyFlags")]
_LeftDblClick($aInfo)
Case $NM_RCLICK ; Sent by a list-view control when the user clicks an item with the right mouse button
Return $GUI_RUNDEFMSG ; allow the default processing
EndSwitch
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc ;==>WM_NOTIFY