Announcement

Collapse
No announcement yet.

ComboBox->Height berechnen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ComboBox->Height berechnen

    Hallo,

    ich möchte eine ComboBox zur Laufzeit in mein Form einbetten. Hierzu bruche ich aber vor Erstellung (um den Hintergrund richtig zu gestalten) den Wert Heights der ComboBox. Dieser Wert ist aber abhängig von der Schriftart und Schriftgröße usw.

    Eine nachträgliche Änderung von Height zeigt leider keine Workung :-(

    Gibt es eine Möglichkeit die Höhe im Vorfeld anhand der Daten des Fonts zu ermitteln?

    Gruß Thorsten

  • #2
    Was heißt im Vorfeld ?

    Man kann nach der Erzeugung unsichtbar machen und die Höhe abfragen oder

    Comment


    • #3
      Na gut, das ginge.<br>
      Ich wollte die ComboBox in eine Tabelle einbetten und muss somit die Tabellenhöhe der möglichen ComboBoxhöhe anpassen.<br>
      Ich fand das ein wenig aufwendig eine ComboBox zu erstellen um die dann gleich wieder zu zerstören, da sie erst irgendwann gebraucht wird.

      Gruß Thorste

      Comment


      • #4
        Hi,

        ich bin nicht ganz sicher, aber paßt sich die Eigenschaft Height von einer ComboBox nicht selbst automatisch der Schriftart an? Wenn du z.B. eine ComboBox auf deinem Formular plazierst, wirst du sehen, dass sich die Eigenschaft Height nicht ändern läßt. Also brauchst du diese Eigenschaft nur abfragen und dann hast du die Information, die du benötigst.
        Ich hoffe dir mit diesem Hinweis weitergeholfen zu haben.

        Gruß Philip

        Comment


        • #5
          Genau das ist ja das Problem: Die Höhe wird automatisch generiert. Ich suchte nur einen Weg, womit sich Height in Abhängigkeit der Schriftgrösse berechnen lässt, da ich nicht extra eine Instanz erzeugen wollte - um sie gleich wieder zu zerstören.

          Nun ich denke ich werde HV's (wie heisst Du eigentlich?) Vorschlag annehmen und doch eine unsichtbare temporäre Instanz erzeugen um die Höhe zu bekommen.

          Vielen Dank für die Anregungungen.

          Gruß Thorste

          Comment


          • #6
            Hallo,

            in der Komponente TCanvas gibt es eine Methode int __fastcall TextHeight(const AnsiString Text);, die die Höhe eines übergebenen Textes in Pixeln zurückgibt.

            Vieleicht bringt diese Funktion ja eine mögliche Lösung Deines Problems.

            Gruß H

            Comment


            • #7
              Es funzt :-))

              Danke.

              Gruß Thorste

              Comment

              Working...
              X