Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-08-2005, 12:50   #1 (permalink)
variuse
 
Benutzerbild von SaKiN
 
Registriert seit: Mar 2004
Ort: Berlin
Beiträge: 117
Zu lange Strings mit ... auslaufen lassen

Hallo zusammen,

und zwar stehen wir hier vor folgendem Problem:

Wir füllen ein dynamisches Textfeld mit unterschiedlich langen Strings. Wenn ein String nun zu lang ist soll er abgeschnitten werden und mit "..." soll symbolisiert werden dass der String noch weiter geht. Unser erster versuch war die String länge abzufragen und zu lange Strings immer nach x Zeichen abzuschneiden und anschließend einfach noch "..." anzuhängenen. Das Problem hierbei war jedoch das die Strings schon beim abschneiden 10 Zeichen völlig unterschioedlich lang waren, da ein kleines i nun mal nicht so breit ist wie ein großes W.

Vieleicht kann uns ja jemand sagen ob es in Flash eine Funktion gibt die Strings so kürzt dass sie optisch gleich lang aussehen, oder einen anderen Lösungsvorschlag. Ein gutes beispiel dafür wie es sein soll ist die Listenansicht in Windows. Zu lange Namen werden hier auch optisch gerade gekürzt.

hoffe auf eure Hilfe.....
__________________
variuse | xing.com
SaKiN ist offline   Mit Zitat antworten
Alt 16-08-2005, 13:16   #2 (permalink)
Nordlicht
 
Benutzerbild von astaroth
 
Registriert seit: Jun 2001
Ort: Hamburg
Beiträge: 569
Hmmmmm....

Vieleicht mit .tabStops ??

TextFormat.tabStops

Availability

Flash Player 6.

Usage

TextFormat.tabStops

Description

Property; specifies custom tab stops as an Array of non-negative integers. Each tab stop is specified in points. If custom tab stops are not specified (null), the default tab stop is 4 (average character width).
__________________
"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen."
Wachsamkeit ist der Preis der Freiheit - Keine Zensur!

– Wau Holland –

http://www.wauland.de
astaroth ist offline   Mit Zitat antworten
Alt 16-08-2005, 13:25   #3 (permalink)
a.k.a maddin79
 
Benutzerbild von madflanderz
 
Registriert seit: Jul 2003
Ort: berlin f-hain
Beiträge: 1.693
es gibt eine schöne funktion der textFormat klasse: getTextExtend
damit kann man die ausmaße eines textes ermitteln.
hab dir mal schnell n kleines beispiel geschrieben, daraus müßtes du dir dann was zusammenstricken können:

ActionScript:
  1. str = "hallo du sack wie geht es dir hallo du sack wie geht es dir";
  2. trimWidth = 100; //wie lang darf der text höchstens sein
  3.  
  4.  
  5. tf = new Textformat();
  6. //tf = deinTextFeld.getTextFormat();
  7. dim = tf.getTextExtent(str);
  8. trace("breite: " + dim.width);
  9.  
  10. while (tf.getTextExtent(str).width > trimWidth)
  11. {
  12.     str = str.substr(0, str.length-1)
  13. }
  14.  
  15. trace(str + "...");

gruß madflanderz
__________________
www.madflanderz.de

ø,¸¸,ø¤º°`°º¤ø,¸¸,ø¤º°` _ addicted to bass _ `°º¤ø,¸¸,ø¤º°`°º¤ø,¸¸,ø
madflanderz ist offline   Mit Zitat antworten
Alt 16-08-2005, 14:44   #4 (permalink)
variuse
 
Benutzerbild von SaKiN
 
Registriert seit: Mar 2004
Ort: Berlin
Beiträge: 117
Vielen Dank es funzt perfekt. Werde dich in meiner Erbschaft bedenken :-)
__________________
variuse | xing.com
SaKiN ist offline   Mit Zitat antworten
Alt 16-08-2005, 15:03   #5 (permalink)
a.k.a maddin79
 
Benutzerbild von madflanderz
 
Registriert seit: Jul 2003
Ort: berlin f-hain
Beiträge: 1.693
na dann hoffe ich mal das du ein reicher mann bist/wirst
__________________
www.madflanderz.de

ø,¸¸,ø¤º°`°º¤ø,¸¸,ø¤º°` _ addicted to bass _ `°º¤ø,¸¸,ø¤º°`°º¤ø,¸¸,ø
madflanderz ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 15:42 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele