Image verschwindet nicht aus erster Listview Spalte

  • Hallo zusammen,

    Folgendes Problem.. ich will NUR in der dritten Spalte Icons oder Bilder anzeigen.. aber egal was ich mache in der ersten Spalte bleibt immer das Bild "0" aus der ImageList oder wie in meinem Projekt ein Platzhalter mit den Maßen.. kennt einer von euch den Grund oder ein Workaround?


    hier mal ein ein etwas abgeändertes Script aus der Hilfe:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <GUIConstantsEx.au3>
    #include <GuiListView.au3>
    #include <GuiImageList.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Debug_LV = False ; Check ClassName being passed to ListView functions, set to True and use a handle to another control to see it work

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    _Main()

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _Main()
    Local $hImage, $hListView

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Create GUI
    GUICreate("ListView Set Extended Style", 400, 300)
    $hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
    _GUICtrlListView_SetExtendedListViewStyle($hListView, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES))
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Load images
    $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)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Add columns
    _GUICtrlListView_InsertColumn($hListView, 0, "Column 1", 180)
    _GUICtrlListView_InsertColumn($hListView, 1, "Column 2", 110)
    _GUICtrlListView_InsertColumn($hListView, 2, "Column 3", 150)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Add items
    _GUICtrlListView_AddItem($hListView, "Row 1: Col 1", 1)
    _GUICtrlListView_AddSubItem($hListView, 0, "Row 1: Col 2", 1)
    _GUICtrlListView_AddSubItem($hListView, 0, "Row 1: Col 3", 2, 2)
    _GUICtrlListView_AddItem($hListView, "Row 2: Col 1")
    _GUICtrlListView_AddSubItem($hListView, 1, "Row 2: Col 2", 1, -1)
    _GUICtrlListView_AddItem($hListView, "<- geht nicht weg")
    _GUICtrlListView_AddSubItem($hListView, 2, "<- ist weg mit -1", 1, -1)
    _GUICtrlListView_AddSubItem($hListView, 2, "<- ist weg", 2)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    _GUICtrlListView_AddItem($hListView, "<- geht nicht weg mit -1", -1)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Loop until user exits
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
    EndFunc ;==>_Main

    [/autoit]




    edit: omg was ist denn hier los.. wo sind die Zeilenumbrüche hin :D ich versuch das mal zu lösen..
    edit.. so besser..


    da hätte ich auch früher drauf kommen können ->
    Spalte 0 auf breite 0 stellen und dann einfach nicht von 0 an zählen sondern von 1

    Einmal editiert, zuletzt von BlackDragon (1. Dezember 2013 um 14:52)