wxWidgets; wxTextCtrl Breite auf n Digits festlegen



  • Morgen Leute,
    Also ich verstehs nicht..
    Ich habe ein wxTextCtrl auf einem wxPanel in einem wxSizer in einem wxFrame.
    Und im wxFrame-Ctor soll das wxTextCtrl so erstellt werden, dass es z.B. 3 Digits, oder allg. Zeichen beinhalten kann..
    Ich habs mit diversen GetTextExtent()s versucht (von wxWindow, oder diversen wxDCs), aber dann ist das wxTextCtrl sogar noch kleiner, in beide Richtungen, als mit der Standard-Größe! So als wäre der Schiftgrad viel zu klein.
    Gibt man dann aber Zeichen ein, haben die allerdings die normale Größe, werden also nicht komplett angezeigt!
    Bei den Leuten im Netz mit ähnlichem Vorhaben scheint es auch zu funktionieren. Darum macht mich das hier erst recht verrückt.

    Weiß jemand was da los ist, bzw. was man dagegen machen kann..??
    Ist da viellecht im Ctor irgendwas Font-seitig noch nicht initialisiert? Sprich muss ich noch irgendwas aktivieren/aufrufen, bevor ich GetTextExtent() nutzen kann??

    MfG
    Zweitopf



  • Welchen wxDC nutzt du denn beim Aufruf von GetTextExtent?
    Probiere mal den Code von der Antwort in set size of a wxTextCtrl in characters, not pixels.



  • Alles klar, es geht doch alles so wie es soll..
    Ich habe natürlich diverse Ränder vergessen. Kein Wunder, dass der Text nicht rein passt, wenn man die Größe genau auf die Textgröße setzt.
    Trotzdem Danke!


Anmelden zum Antworten