Dynamische Fensterbreite
-
Hallo zusammen!
Ich habe mir in einem Win32 Programm ein Hauptfenster erstellt. Darin gibt es jetzt einige Textboxen, die Text enthalten. Jenachdem, welche Aktion ausgeführt wird, wird der Text darin ersetzt durch längeren, oder kürzeren Text. Soweit sogut.
Mein Problem besteht darin, dass immer 2 Textboxen nebeneinander sitzen. Diese dann mehrmals untereinander. Diese haben eine Breite von 205 Pixeln. Wenn ich jetzt etwas längeren Text dort hineinschreibe, dann wird der abgeschnitten und in eine 2. Zeile Gestopft, die vom nächsten Textfenster teilweise überdeckt wird.
Mittlerweile habe ich herausgefunden, dass ich die Größe mitSetWindowPos(hRSK1Main, HWND_TOP, 90+sizeof(chText)*22, 70, 16, 30, NULL);Manuell anpassen kann. Dasist jedoch sehr aufwändig, da ich nach jeder veränderung diese Funktion aufrufen müsste.
Gibt es eine möglichkeit die Breite des Fensters dynamisch zu machen, sprich, dass es sich automatisch an die länge der Buchstaben/Char-Stellen anpasst?
(hoffe die Fragestellung ist verständlich
)
-
Hi du,
Da das fenster so oder so regelmäßig neu gezeichnet wird, kannst Du die fkt setwindow pos in deiner WM_PAINT aufrufen,
einfacher finde ich jedoch ein editfeld mit ES_AUTOHSCROLL zu versehen, dadurch verbleiben texte bis n zeichen in einer zeile und kannst mit dem cursor nach rechts bzw. links scrollen,...grüße
-
Argh, auf die Idee bin ich noch garnicht gekommen!
Danke!