optimale Breite einer Textbox

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

optimale Breite einer Textbox

Beitrag von Stephan »

Hallo,

ich möchte zur Laufzeit auf einem Basic-Dialog eine Textbox erstellen - soweit kein Problem. Nun soll jedoch die Breite der Textbox so gewählt werden das ein bestimmter, vorher nicht bekannter, Text dort "reinpaßt". Also suche ich so etwas wie eine Funktion zum Einstellen der optimalen Breite der Textbox. Ich kann zwar per Code die Schriftart einstellen und könnte dann für bekannte Schriftarten eine Näherungslösung ermitteln (Näherungslösung weil ich bei Proportionalfonts sehr viele verschiedene Buchstabenbreiten berücksichtigen müßte ...) problematisch ist die Sache aber wenn ich auf einem unbekannten Zielsystem bin und (vorher) nicht weiß welche Fonts überhaupt verfügbar sind (sein werden).
Ein Fixed-Font würde es etwas vereinfachen, jedoch bleibt das Problem das ich nicht weiß ob dieser auf dem Zielsystem verfügbar ist. Ich sehe im Weiteren auch keine Möglichkeit aus dem Namen eines Fonts darauf zu schließen ob er fix oder proportional ist wenn ich den Font nicht schon vorher kenne und bin nicht sicher ob bei einem Fixed-Font die Zeichen alle so hoch wie breit sind (natürlich ist die Breite aller Zeichen gleich). Ich nehme das nicht an da Courier deutlich breiter wirkt als Courier New.

Meine jetzige Überlegung ist auf dem System einen Font zu ermitteln (meinetwegen den als Standard für die Textbox verwendeten Font, welcher in den Einstellungen des Systems verankert ist) dann meinen Text in eine Calc-Zelle einzutragen, diese Zelle auf optimale Breite zu stellen, diese Breite auszulesen und unter Verwendung eines Korrekturfaktors basierend auf der ausgelesenen Breite die Breite der Textbox festzulegen.
Das ist arg kompliziert. Hat jemand eine andere Lösung oder Anregung?

Gruß
Stephan
ykcim
*****
Beiträge: 324
Registriert: Di, 29.07.2003 15:22
Wohnort: Neu-Isenburg
Kontaktdaten:

optimale Breite einer Textbox

Beitrag von ykcim »

Hi,

die Eigenschaften: Mehrzeilig und Horizontale Scrollbar helfen Dir nicht?
Damit wird der Text automatisch in der Box umgebrochen und wenn die Box nicht reicht eine Scrollbar eingefügt.

Michael
__
FAQ zu Starbasic -> http://www.starbasicfaq.de
Antworten