Listview und @CRLF...Win7=Ja WinXp=Nein

  • Aloha,
    hat einer von Euch eine Idee wieso unter Windows7 ein @CRLF bei _GUICtrlListView_SetItem angezeigt wird und bei WinXP der Zeilenumbruch ignoriert wird ?

  • Aha Danke, ein Fehler in Win7 also...zumindest ein optisch schicker.


    Wieso hat das da nichts zu suchen ?


    Sind doch viele Beiträge gerade hier im Forum von Usern die das gerne nutzen würden.

    Halt schon Praktischer wenn man den Text der Zeile komplett sieht und nicht "text bla..."

    Nicht jeder Benutzer möchte die Zeilengröße ändern, ein Tooltip nutzen oder noch extra Felder anlegen in denen dann die selektierten Infos angezeigt werden.


    Oscar :

    so schaut es in Betrieb aus (Win7 - 64bit)
     [Blockierte Grafik: http://i46.tinypic.com/dw6fco.jpg]

    So Listview erstellt:

    [autoit]

    $ListView1 = GUICtrlCreateListView("Titel|Preis|Ort|Datum", 18, 27, 718, 590, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
    _GUICtrlListView_SetExtendedListViewStyle($ListView1, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES, $LVS_EX_DOUBLEBUFFER))
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 396)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 80)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 130)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 3, 90)
    GUISetState()
    ;dann mit_GUICtrlListView_AddItem($ListView1, $RssArray[$i][0],$i);und subitems...$TDate = $splittime[5] & " Uhr" & @CRLF & $TDay & @CRLF & $splittime[2] & "." & $TMonth & "." & $splittime[4]
    _GUICtrlListView_SetItem($ListView1, $TDate, $aktuellerindex, 3);date

    [/autoit]


    In WinXP dann halt ohne Zeilenumbruch.

    Einmal editiert, zuletzt von JaneDoe (10. Oktober 2012 um 21:09)

  • PS:
    Wollte den Beitrag nun nicht wieder Bearbeiten, da immer jede Menge Zeilenumbrüche unter Opera eingebaut werden.
    Selbst wenn ich die im bearbeiten Modus lösche, sind sie nach dem Absenden wieder da.
    Eventuell könnte man das noch am Forenscript verändern, Danke.

    • Offizieller Beitrag

    Das Verhalten dürfte auch darauf zurückzuführen sein, dass Win7 einen Zwangsumbruch bei zu langen Einträgen macht. Was aber auch nur passiert, wenn Du ein Bild mit entsprechender Größe eingefügt hast.
    Erzwingen kann man den Umbruch nicht. Siehe hier:

    Spoiler anzeigen
    [autoit]


    #include <Date.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiListView.au3>
    #include <ListViewConstants.au3>
    #include <WindowsConstants.au3>

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

    GUICreate("Test", 640, 120, -1, -1, BitOR($GUI_SS_DEFAULT_GUI, $WS_MAXIMIZE, $WS_MAXIMIZEBOX))
    GUISetState(@SW_SHOW)
    $ListView1 = GUICtrlCreateListView("Titel|Preis|Ort|Datum", 18, 27, 718, 590, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
    _GUICtrlListView_SetExtendedListViewStyle($ListView1, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES, $LVS_EX_DOUBLEBUFFER))
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 396)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 80)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 130)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 3, 90)
    GUICtrlCreateListViewItem('ewrifgerwjewrsi|64€|regjfrei|rgrekmlmer', $ListView1)
    GUISetState()
    _GUICtrlListView_SetItem($ListView1, _Now() & @CRLF & 'Test', 0, 3);date
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    [/autoit]
  • Hm, kurios.

    Hab das Beispiel von dir nun kurz an meines angepasst und es funktioniert wieder.
    Selbst wenn kein Bild vorhanden ist, verändert er ja die Größe der Zeilen und dann klappt es auch wieder mit dem Umbruch.

    Schade das die Möglichkeit so eigentlich nicht vorhanden ist, ermöglicht doch ein Optisch ansprechendes Arbeiten.


    Da kann ich ja mal froh sein Win7 zu nutzen :whistling:


    Beispiel:

    Spoiler anzeigen
    [autoit]

    #include

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

    #include

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

    #include

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

    #include

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

    #include

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

    #include

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

    GUICreate("Test", 640, 120, -1, -1, BitOR($GUI_SS_DEFAULT_GUI, $WS_MAXIMIZE, $WS_MAXIMIZEBOX))

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

    GUISetState(@SW_SHOW)

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

    $ListView1 = GUICtrlCreateListView("Titel|Preis|Ort|Datum", 18, 27, 718, 590, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))

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

    _GUICtrlListView_SetExtendedListViewStyle($ListView1, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_GRIDLINES, $LVS_EX_DOUBLEBUFFER))

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

    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 396)

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

    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 80)

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

    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 130)

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

    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 3, 90)

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

    $hImage = _GUIImageList_Create(64, 64)

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

    _GUIImageList_AddBitmap($hImage, @scriptdir & "egal.bmp")

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

    _GUICtrlListView_SetImageList($ListView1, $hImage, 1)

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

    $aktuellerindex = _GUICtrlListView_AddItem($ListView1, "Test",0)

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

    _GUICtrlListView_SetItem($ListView1, "test" & @CRLF & "test 2", $aktuellerindex, 1)

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

    GUISetState()

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

    _GUICtrlListView_SetItem($ListView1, _Now() & @CRLF & 'Test', 0, 3);date

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

    Do

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

    Until GUIGetMsg() = $GUI_EVENT_CLOSE

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