Textfelder skalieren

BenFish

Erfahrenes Mitglied
Hallöle,

gibt es irgendeine Möglichkeit, die Größe von Textfeldern pixelgenau einzustellen, ohne den darin enthaltenen Text zu verformen?
Wenn ich die Abmessungen im Eigenschaften Fenster setze, wirkt sich das ja auf den Text aus und wenn ich das Textfeld mit dem eigenen Scaler einstellen will, dann geht das nicht so genau wie ich's brauch.

Danke!
 
Hi Benfish.

Meines Wissens nach ist das nur bei Textfeldern möglich, die dynamisch erstellt wurden. Was ja ansich eigentlich kein Problem ist. So erstellst du dynamisch ein Textfeld:

1. Das Textfeld erstellen:
PHP:
_root.createTextField('instanzname',tiefe,x-position,y-position,breite,höhe);

2. Dem Textfeld einen Inhalt geben:
PHP:
instanzname.text = "Dies ist der Text!";

3. Das Textfeld bearbeiten:
So, nun wird's witzig. Nun gehn wir dran, dass Textfeld unseren Wünschen anzupassen. Dazu erstellen wir ersteinmal ein neues Format. Das geht so:
PHP:
neues_format = new TextFormat();
Nun weisen wir diesem neuen format Eigenschaften zu, was wiederum so funktioniert:

PHP:
neues_format.font = "Times New Roman" // <--- Die Schriftart
neues_format.size = 12 // <--- Die Schriftgröße
neues_format.textColor = 0x000000 // <--- Die Schriftfarbe
neues_format.bold = false // <--- Dick schreiben
neues_format.italic = false // <--- Kursiv schreiben
neues_format.underline = false // <--- Unterstrichen schreiben
neues_format.url = "" // <--- Text ist ein Hyperlink mit dieser URL
neues_format.target = "" // <--- Diese Url wird in diesem Fenster geöffnet
neues_format.align = "left" // <--- Ausrichtung
neues_format.leftMargin = 0 // <--- Abstand des Textes von l. Rand im Textfeld
neues_format.rightMargin = 0 // <--- Abstand des Textes von r. Rand im Textfeld
neues_format.indent = 0 // <--- Keine Ahnung
neues_format.leading = 0 // <--- Keine Ahnung
neues_format.bullet = false // <--- Keine Ahnung
neues_format.tabStops = [] // <--- Die Reihenfolge von Tabsprüngen

Nun haben wir also unser eigenes Format. Das weisen wir nun noch unserem erstellten Textfeld zu:
PHP:
_root.instanzname.setTextFormat(neues_format);

Taataa! Fertig.



Grüße
Killy
 
Danke für den guten Tip.

Erstelle die Textfelder zwar nun nicht dynamisch, wenn ich aber mittels _x _y _width _height die Eigenschaften verändere, macht der Text das was er soll, nämlich nix!

createTextField ist aber auch eine brauchbare Wissenserweiterung.


Gruß
BenFish
 
Meines Wissens nach ist das nur bei Textfeldern möglich, die dynamisch erstellt wurden.

...da hast du dich aber ganz schön auf die äste herausgewagt, liber killy ;)


ist ja klar, dass man ein textfeld nicht skalieren kann. das textfeldobjekt hat ja keine der folgenden eigschaften:
_xscale, y_scale


mc's aber schon. also packen wir das textfeld in einen mc und scalen den mc.

sauclever
 
...höchstens mit der Eigenschaft autoSize von Textfeldern, die kann man noch perfekt dazu nutzen, um das Textfeld genau so groß wie den enthaltenen Text zu gestalten. :)

Textfeld in MC skalieren funktioniert logischerweise auch nur mit statischem Text, nicht dass mal jemand auf die Idee kommt, das mit einem Textfeld-in-MC machen zu wollen, der dynamischen Text darstellen soll.

Geist
 

Neue Beiträge

Zurück