Fenster vergrößern

  • Hi
    hab (mal wieder :P) ein Problemchen mit ner GUI. Und zwar: Ich hab ein(e?) GUI in der ein(e?) ListView drin ist. Darunter ist Text. Wie erreiche ich dass ich der/die/das GUI großziehen/maximieren kann wobei der Text unten am rand bleibt aber der/die/das ListView nach unten hin größer wird???
    also ca. so:
    vorher:

    _________________________
    | Testfenster X|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    |~~~~~~~~List View~~~~~~~~|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    TextTextText
    TextTextText
    TextTextTexT

    nachher:

    _________________________
    | Testfenster X|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    |~~~~~~~~List View~~~~~~~~|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    |~~~~~~~~~~~~~~~~~~~~~~~~|
    TextTextText
    TextTextText
    TextTextTexT

    Naja oder so ähnlich ^^ Hab damit leider keine Erfahrung deshalb frag ich hier. Das ist mal ein Beispielskript:

    Spoiler anzeigen
    [autoit]

    #include "GUIConstants.au3"

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

    #Region ### START Koda GUI section ### Form=
    $Form2 = GUICreate("Form1", 413, 241, 303, 219)
    $ListView1 = GUICtrlCreateListView("1|2|3|4", 5, 5, 405, 150)
    GUICtrlSendMsg(-1, 0x101E, 0, 50)
    GUICtrlSendMsg(-1, 0x101E, 1, 50)
    GUICtrlSendMsg(-1, 0x101E, 2, 50)
    GUICtrlSendMsg(-1, 0x101E, 3, 50)
    $ListView1_0 = GUICtrlCreateListViewItem("123|123|123|123", $ListView1)
    $ListView1_1 = GUICtrlCreateListViewItem("234|234|234|234", $ListView1)
    $ListView1_2 = GUICtrlCreateListViewItem("345|35|345|345|", $ListView1)
    $ListView1_3 = GUICtrlCreateListViewItem("456|456|456|456", $ListView1)
    $ListView1_4 = GUICtrlCreateListViewItem("567|567|567|567", $ListView1)
    $ListView1_5 = GUICtrlCreateListViewItem("67 8| 67 8| 67 8| 678", $ListView1)
    $ListView1_6 = GUICtrlCreateListViewItem("789|789|789|789", $ListView1)
    $ListView1_7 = GUICtrlCreateListViewItem("890|890|890|890", $ListView1)
    $ListView1_8 = GUICtrlCreateListViewItem("111|111|111|111", $ListView1)
    $ListView1_9 = GUICtrlCreateListViewItem("222|222|222|222", $ListView1)
    $ListView1_10 = GUICtrlCreateListViewItem("333|333|333|333", $ListView1)
    $ListView1_11 = GUICtrlCreateListViewItem("444|444|444|444", $ListView1)
    $ListView1_12 = GUICtrlCreateListViewItem("555|555|555|555", $ListView1)
    $ListView1_13 = GUICtrlCreateListViewItem("666|666|666|666", $ListView1)
    $ListView1_14 = GUICtrlCreateListViewItem("777|777|777|777", $ListView1)
    $ListView1_15 = GUICtrlCreateListViewItem("88 8| 88 8| 88 8| 888", $ListView1)
    $ListView1_16 = GUICtrlCreateListViewItem("999|999|999|999", $ListView1)
    $ListView1_17 = GUICtrlCreateListViewItem("000|000|000|000", $ListView1)
    $Label1 = GUICtrlCreateLabel("Der Text soll am unteren Rand bleiben", 5, 160, 185, 17)
    $Label2 = GUICtrlCreateLabel("Aber das ListView soll nach unten hin", 5, 180, 180, 17)
    $Label3 = GUICtrlCreateLabel("größer werden.", 5, 200, 75, 17)
    $Label4 = GUICtrlCreateLabel("Wie geht das???", 5, 220, 85, 17)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]


    Achja ich hab im echten Script das ListView mit _GUICtrlListView_Create erstellt. Nicht so wie hier sry^^

    • Offizieller Beitrag

    Hallo

    So sollte es gehen:

    Spoiler anzeigen
    [autoit]

    #include "GUIConstants.au3"

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

    #Region ### START Koda GUI section ### Form=
    $Form2 = GUICreate("Form1", 413, 241, 303, 219,$WS_SIZEBOX)
    $ListView1 = GUICtrlCreateListView("1|2|3|4", 5, 5, 405, 150)
    GUICtrlSetResizing(-1,102)
    GUICtrlSendMsg(-1, 0x101E, 0, 50)
    GUICtrlSendMsg(-1, 0x101E, 1, 50)
    GUICtrlSendMsg(-1, 0x101E, 2, 50)
    GUICtrlSendMsg(-1, 0x101E, 3, 50)
    $ListView1_0 = GUICtrlCreateListViewItem("123|123|123|123", $ListView1)
    $ListView1_1 = GUICtrlCreateListViewItem("234|234|234|234", $ListView1)
    $ListView1_2 = GUICtrlCreateListViewItem("345|35|345|345|", $ListView1)
    $ListView1_3 = GUICtrlCreateListViewItem("456|456|456|456", $ListView1)
    $ListView1_4 = GUICtrlCreateListViewItem("567|567|567|567", $ListView1)
    $ListView1_5 = GUICtrlCreateListViewItem("67 8| 67 8| 67 8| 678", $ListView1)
    $ListView1_6 = GUICtrlCreateListViewItem("789|789|789|789", $ListView1)
    $ListView1_7 = GUICtrlCreateListViewItem("890|890|890|890", $ListView1)
    $ListView1_8 = GUICtrlCreateListViewItem("111|111|111|111", $ListView1)
    $ListView1_9 = GUICtrlCreateListViewItem("222|222|222|222", $ListView1)
    $ListView1_10 = GUICtrlCreateListViewItem("333|333|333|333", $ListView1)
    $ListView1_11 = GUICtrlCreateListViewItem("444|444|444|444", $ListView1)
    $ListView1_12 = GUICtrlCreateListViewItem("555|555|555|555", $ListView1)
    $ListView1_13 = GUICtrlCreateListViewItem("666|666|666|666", $ListView1)
    $ListView1_14 = GUICtrlCreateListViewItem("777|777|777|777", $ListView1)
    $ListView1_15 = GUICtrlCreateListViewItem("88 8| 88 8| 88 8| 888", $ListView1)
    $ListView1_16 = GUICtrlCreateListViewItem("999|999|999|999", $ListView1)
    $ListView1_17 = GUICtrlCreateListViewItem("000|000|000|000", $ListView1)
    $Label1 = GUICtrlCreateLabel("Der Text soll am unteren Rand bleiben", 5, 160, 185, 17)
    GUICtrlSetResizing(-1,768+64)
    $Label2 = GUICtrlCreateLabel("Aber das ListView soll nach unten hin", 5, 180, 180, 17)
    GUICtrlSetResizing(-1,768+64)
    $Label3 = GUICtrlCreateLabel("größer werden.", 5, 200, 75, 17)
    GUICtrlSetResizing(-1,768+64)
    $Label4 = GUICtrlCreateLabel("Wie geht das???", 5, 220, 85, 17)
    GUICtrlSetResizing(-1,768+64)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]

    Mfg Spider

    • Offizieller Beitrag

    Ich hatte das Problem in das Bug-Forum des engl. AutoIt-Forums gestellt.
    Lapidare Antwort:

    Zitat

    Es ist völlig offensichtlich, du nutzt nicht die grundlegenden Funktionen von AutoIt und somit sind die grundlegenden Funktionalitäten von AutoIt nicht wirksam. Das ist KEIN BUG.


    Na SUPER - willst du erweiterte Funktionalität nutzen (oder mußt du, weil die alte weg ist!!), sind die grundlegenden AutoIt-Funktionen eingeschränkt.
    Also ich bin einfach nur stinksauer. Ich kann mich ja der Versionsfortschreibung nicht entziehen! Wenn ich meine Skripte weiter unter der 3.2.9-er Version schreibe, sind sie für andere wertlos.
    Hier findet leider eine Entwicklung in AutoIt statt, die so sicher (von den meisten) nie gewollt war und irgendwann AutoIt ebenso kompliziert macht, wie eine Hochsprache.
    Pessimistischerweise würde ich sagen, das ist der Anfang vom Ende.:cursing: Aber der Optimist in mir ist noch nicht gestorben.:evil:

    Carsten8:
    Ich werde jetzt eine Resizing-Funktion schreiben, die dieses Problem beseitigt.
    Der Nachteil wird sein: Ich nutze dazu das Resizing-Ereignis. Das wird erst wirksam, nachdem (und nicht während) ein Fenster aufgezogen/zusammengeschoben wird. Somit "springt" das Steuerelement erst am Ende der Aktion in die neue Position, optisch unschön.

    Edit:
    So, die Funktion ist erstellt. Zu finden hier: Resizing bei Nicht-Standard-Controls, z.B. _GUICtrlListView_Create

    • Offizieller Beitrag

    Das Problem ist, dass wir einen Mix aus StandardResizing und der neuen Resizing-Funktion haben. Im Standard hast du Dock-Funktionalität, die ich hier nicht anbieten kann.
    Du kanst aber versuchen für den Button die Option GUICtrlResize in Bezug auf das ListView zu setzen. Vielleicht klappt das.