Größe von ComboBox einstellen nicht möglich? Height-Parameter ohne Funktion?

  • Hallo Leute,

    ist vielleicht ein absolutes Idioten-Problem, aber das plumpe Anwenden der GUICtrlCreateCombo-Parameter hilft mir nicht.
    Von anderen Controls kenne ich es nur so, dass ich die Größe per width und height definieren kann.

    Bei GUICtrlCreateCombo funktioniert es nicht. Das angepasste Beispiel soll das zeigen:

    Wie funktioniert es?

    Grüße autoiter


  • Von anderen Controls kenne ich es nur so, dass ich die Größe per width und height definieren kann.

    Bei GUICtrlCreateCombo funktioniert es nicht. Das angepasste Beispiel soll das zeigen:
    ...


    das angezeigte Beispiel zeigt das was ich vom Code erwarte, vielleicht definierst du ja (irgendwie anders) welche Anzeige du erwartest?

    Einmal editiert, zuletzt von autoBert (14. März 2016 um 20:07)

  • Hier nochmal, worum es mir prinzipiell geht.

    Ich sehe ja selbst, der height-Parameter ist nicht völlig funktionslos. Er ändert etwas die Control-Abstände.
    Eigentlich geht es mir darum in einer GUI Buttons und Comboboxen gleich groß zu machen. Das bekomme ich mit den vorgesehenen Methoden aber nicht hin.

    Spoiler anzeigen

    Bei mir sieht das wie im Anhang aus.

  • Genau die gleiche Version, allerdings zeigt mir auch dein Screenshot genau was ich von dem Code erwarte. Du solltest mal den Parameter Style benutzen, vielleicht erwartest du ja eine Anzeige die von Style: $CBS_SIMPLE erzeugt wird. Standardmäßig erhälst du eine Editbox, die bei Bedarf ausklappt.

  • Sorry autoBert,
    ich kann dir nicht folgen. Bevor wir jetzt über meine sprachlichen Fehler sprechen, mein Problem adäquat zu beschreiben. Erkläre mir bitte wie du die Größe dieses Controls erfolgreich änderst.

    Grüße autoiter

  • über den Height-Parameterm dieser wirkt sich aber nicht bei Default-Style aus, benutze $CBS_Simple als Style und du erkennst einen Unterschied:

  • Hey Leute,
    ich habe das Skript von autoBert nun einmal mit seiner Höhe 170 height_170.png
    und dann mit der Höhe 40 height_40.pnggestartet.

    Das kann doch nicht richtig sein?!?


    Ich erwarte analog zu den anderen Controls eine Änderung der Größe, damit ich sie eben in gleicher Größe neben Buttons verwenden kann.

    Grüße autoiter

    • Offizieller Beitrag

    Ich denke, du hast den Sinn des Height-Parameters falsch verstanden. Es ist nicht die Höhe der Box.

    Zitat von AutoIt-Hilfe

    Under Windows XP/2003 Windows will adjust the size of the opened combo. On other Windows versions you can define this size with the "height" parameter if the default value is not BIG enough to contain at least one line.

    Es geht um die Höhe der geöffneten Box.

  • @BugFix
    Danke, verstehe. Ich hoffe aber, mein Missverständnis ist nachvollziehbar, denn das unterscheidet sich völlig dem Handling aller andern Constrols.

    @CentuCore
    Das wäre ein Workaround. Allerdings sieht die Beschriftung dann natürlich ganz anders aus, als bei den normalen Buttons.

    Fazit, es geht nicht wirklich, oder?

    Ich bin völlig überrascht. Nie hätte ich gedacht, dass ich die ComboBoxen nicht frei in der Größe anpassen könnte, wie die anderen Controls.

    Kennt jemand einen guten ComboBoxen-Selbstbau?

    Grüße autoiter

  • Hey BugFix,

    hast du das mal ausprobiert?
    Unbenannt.PNG

    Spoiler anzeigen


    Bei mir bleibt alles beim Alten!


    Kann wirklich niemand das Problem nachvollziehen?


    EDIT: Äh, gerade GUICtrlSetPos($idComboBox, 10,10, 80, 40) verwendet...
    Hat aber leider nichts verändert.

    Grüße autoiter

    • Offizieller Beitrag

    Ich habe mal einen Workaround erstellt, wie du das Lösen kannst:

  • BugFix : Wollte gerade die gleiche Funktion vorschlagen. Die Abweichung beträgt aber - soweit ich weiß und hier nachstellen konnte - immer 8 Pixel. Deine Methode ist da natürlich deutlich störunanfälliger.

    Es gibt Tage, da trete ich nicht ins Fettnäpfchen. Ich falle in die Friteuse.

    • Offizieller Beitrag

    soweit ich weiß und hier nachstellen konnte - immer 8 Pixel

    Bei mir waren es 6 Pixel. Und da ich annahm, dass das vom WindowStyle (Fensterränder) abhängt, bin ich auf die variable Variante gewechselt.
    Besser ist es noch, den Workaround in eine Funktion auszulagern - sieht dann so aus: