GUICtrlCreateListViewItem <- strings verwenden?

  • was wäre ich nur ohne dieses forum? :)

    also, ich habe leider keine passende lösung gefunden und würde gerne meine list die 3 spalten enthält mit dem inhalt eines strings füllen.

    item1 =GUICtrlCreateListViewItem ($string1 & '|' & $string2 & '|' & $string3 , $listview)

    das ganze geht aber nicht, strings irgendwie nicht akzeptiert werden... wie bekomme ich da meine werte aus den strings hin!?

    Einmal editiert, zuletzt von WhiteLion (3. November 2009 um 13:14)

  • poste doch mal dein bisheriges Script

    gruss Simon

    Edit:
    Hier ein Beispiel mit strings

    Spoiler anzeigen
    [autoit]

    #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>

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

    Global $string1 = "Hallo"
    Global $string2 = "Hi"
    Global $hListView

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

    $Debug_LV = False ; Prüft den Klassennamen (ClassName), der an die ListView Funktion übergeben wird. Setze dies versuchsweise auf True und verwende dann ein Handle zu einem anderen Steuerelement, um die Funktionsweise zu verstehen.

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

    ; Erstellt eine GUI
    GUICreate("ListView SubItem hinzufügen", 400, 300)
    $hListView = GUICtrlCreateListView("", 2, 2, 394, 268)
    _GUICtrlListView_SetUnicodeFormat($hListView, False)
    GUISetState()

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

    ; Lädt die Bilder

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

    ; Fügt die Spalten hinzu
    _GUICtrlListView_InsertColumn($hListView, 0, "Spalte 1", 100)
    _GUICtrlListView_InsertColumn($hListView, 1, "Spalte 2", 100)
    _GUICtrlListView_InsertColumn($hListView, 2, "Spalte 3", 100)

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

    ; Fügt die Items hinzu
    _GUICtrlListView_AddItem($hListView, $string1, 0)
    _GUICtrlListView_AddSubItem($hListView, 0, $string2, 1, 1)
    _GUICtrlListView_AddSubItem($hListView, 0, "Zeile 1: Spalte 3", 2, 2)
    _GUICtrlListView_AddItem($hListView, "Zeile 2: Spalte 1", 1)
    _GUICtrlListView_AddSubItem($hListView, 1, "Zeile 2: Spalte 2", 1, 2)
    _GUICtrlListView_AddItem($hListView, "Zeile 3: Spalte 1", 2)

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

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    [/autoit]

    Das Beispiel ist aus der Hilfe , nur abgewandelt

    gruss Simon

    Einmal editiert, zuletzt von simon (3. November 2009 um 11:16)

  • was soll da nicht funktionieren?

    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    Opt('MustDeclareVars', 1)

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

    Local $listview, $button, $item1, $item2, $item3, $input1, $msg

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

    local $string1="text1"
    local $string2="text2"

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

    GUICreate("listview items", 220, 250, 100, 200, -1, $WS_EX_ACCEPTFILES)

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

    $listview = GUICtrlCreateListView("col1 |col2|col3 ", 10, 10, 200, 150);,$LVS_SORTDESCENDING)
    $item1 = GUICtrlCreateListViewItem($string1&"|"&$string2&"|col23", $listview)
    GUISetState()

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

    Do
    $msg = GUIGetMsg()
    Until $msg = $GUI_EVENT_CLOSE

    [/autoit]
  • ich habe das problem gefunden, aber noch keine lösung.
    da ich die strings aus einem 2D array definiert habe sinds wohl noch keine echten strings und das ganze funktioniert nicht.
    bei mir werden die so definiert, was wohl falsch ist... nur wie gehts richtig bzw wie wandelt man die um?
    $string1 = $array1[$xpos][$ypos+1]
    msgbox zeigt mir jedenfalls die "zelle" im array richtig an, so dass ich dachte ich kann es auch als string weiterverarbeiten.
    _ArrayToString($string1, , 0, 0)
    geht ja mit 2D arrays nicht und selbst nach wenn ichs so versuche ist es immernoch kein verwertbarer string ... wie bekomme ich daraus nun einen string?

    2 Mal editiert, zuletzt von WhiteLion (3. November 2009 um 12:34)

  • au man bin ich doooof ... ich wollte die strings weiterverarbeiten und war schon auserhalb einer/der funktion....
    wenn ich innerhalb selbiger bleibe gehts natürlich.... verdammt ... so ein ärger wegen sonem blöden fehler! :(

    muss ich mir mal das mit den funktionen angucken wie ich werte/strings übergebe bzw ausserhalb der funktion weiterverarbeiten kann.

  • muss ich mir mal das mit den funktionen angucken wie ich werte übergebe...

    [autoit]


    Return

    [/autoit]

    bzw ausserhalb weiterverarbeiten kann.

    [autoit]


    ;Wenn Variablen in einer(1) Funktion definiert werden, sind sie meines Wissens local.
    ;Um diese Variablen auch außerhalb einer Funktion zu verwerten solltest du die vorher mit
    Global
    ;definieren

    [/autoit]
  • kjvgf