Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-04-2006, 09:17   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 888
Question text beschneiden lassen ?

halodele ich wollte einen langen text beschneiden wenn der nicht mehr in das textfeld rein past. der soll dann auch noch am ende die 3 typischen pünktchen setzen.
also das ich habe mal gemacht ist aber nicht grade sehr gut weil der IMMER die pünktchen setzt. und der eine feste an zahl von buchstarben den text abschneidet.
ActionScript:
  1. inh = "Hello world hallo weldwerdf dies ist ein blind text";
  2. if (this.txt.maxscroll == 1) {
  3.     besch = inh.substring(-5, 35)+" ...";
  4. } else {
  5.     besch = inh;
  6. }
  7. txt.text=besch;
  8. trace(besch);

was ich aber denke was besser wäre wenn man ermittelt wo er anfangen müsste zu scrollen und dann den rest wechmacht (+3) und dann 3 pünktchen setzt.
flozwo ist offline   Mit Zitat antworten
Alt 14-04-2006, 14:10   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Ich würde es etwa so machen:
PHP-Code:
inh "Hello world hallo weldwerdf dies ist ein blind text";
trace("inh.length="+inh.length);
if(
inh.length 35){
    
besch inh.substring(035)+" ...";
} else {
    
besch inh;
}
txt.text=besch;
trace("besch="+besch);
this.stop(); 
  Mit Zitat antworten
Alt 14-04-2006, 14:35   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 888
wofür ist den das this.stop();?
also ich nurtzer es nur wenn ich was über die zeitleiste steueren will also dann so stop();
flozwo ist offline   Mit Zitat antworten
Alt 14-04-2006, 14:39   #4 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 888
Thumbs up

aber erst mal danke für die hilfe =)
flozwo ist offline   Mit Zitat antworten
Alt 14-04-2006, 15:10   #5 (permalink)
aufdemwegnachberlin
 
Benutzerbild von purewhite
 
Registriert seit: Jul 2004
Beiträge: 591
hi zusammen,
mich würde interessieren, ob ich die länge eines dyn.
Textfeld auch noch ermitteln kann, da ja die Zeichenlänge vorgegeben ist.
so könnte man auf verschieden große txt-field reagierengruß0
pw
purewhite ist offline   Mit Zitat antworten
Alt 14-04-2006, 15:45   #6 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 888
Talking

ist das mitlaweile nicht so das man die nciht so richtig dyn macken kann ? also man kann welche über as erzeugen aber dann muss die breite und so fest sein.
man kann mit dem "maxscroll" gucken ob der text inhalt größer als das textfeld ist.
flozwo ist offline   Mit Zitat antworten
Alt 14-04-2006, 16:29   #7 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
wofür ist den das this.stop();?
Um einen evtl. Framewechsel zu unterbinden.
  Mit Zitat antworten
Alt 14-04-2006, 16:34   #8 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 888
wie meinst du? also ich habe alles immer in table
flozwo ist offline   Mit Zitat antworten
Alt 14-04-2006, 16:37   #9 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
this.stop() verhindert, dass der Steuerkopf auf den nächsten Frame wandert, wenn es einen gibt. Ich setz das grundsätzlich, um den Steuerkopf auf diesem Frame zu belassen.
  Mit Zitat antworten
Alt 14-04-2006, 17:11   #10 (permalink)
aufdemwegnachberlin
 
Benutzerbild von purewhite
 
Registriert seit: Jul 2004
Beiträge: 591
@flozwo

hmm, und wie kann man das prüfen, mit maxscroll ?
Wenn ich das Prüfen kann, müsste ich doch die Zeichenlänge bestimmen können, dann 3 zeichen weniger und die ... anhängen ..??
Leichter gesagt als getan
purewhite ist offline   Mit Zitat antworten
Alt 14-04-2006, 17:43   #11 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 888
ja das ist ja auch das problem was ich hatte ich habe es aber so gemacht wie es "agedoubleju" gemacht hat.
aber ich denke man kann ein onEnterframe setzen in dem die abfrage drinne ist
ob der scrollen (maxscroll) und nimmt immer eins wech und wenn er nciht mehr maxscroll =0 ist soll der nochmal 3 weniger machen und dann dafür punkte setzen und dann aufhören. also das ist ca so wie ich es im kopf habe
müsste man aber bestimmt testen um zu gucken ob es geht.
ActionScript:
  1. a = "ist es irgnedwie möglich (evtl. mit div), einen Text der in einem bestimmten ";
  2. //a = "ist es irgnedwie";
  3. this.txt.text=a;
  4. onEnterFrame=function(){
  5. if(this.txt.maxscroll == 1) {
  6.     num=35;
  7.     num-=num;
  8.     b=this.txt.text.slice(0, num)+"...";
  9. }else{
  10.     delete this.onEnterFrame();
  11.     }
  12. }
  13. this.txt.text=b;
flozwo ist offline   Mit Zitat antworten
Alt 14-04-2006, 17:52   #12 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 888
Unhappy

oder irgentwie so wobei die abfrage nicht ganz richtig ist =/
also die var max ist die maximale länge die das teil haben kann in dem bock und von da aus fäng der an unter zu zählen und dann wenn es kein mxscroll mehr gibt ist es okay und geht nicht mehr in die bedingung mehr rein und muss damit auf hören. aber da müsste noch was dran getan werden sind halt nur überlegungen. es kann sich ja jemand das angucken und überarbeiten. weil ich denke das ich heute nicht mehr viel zeit haben werde um was zu flashen.
ActionScript:
  1. a = "ist es irgnedwie möglich (evtl. mit div), einen Text der in einem bestimmten ";
  2. this.txt.text=a;
  3. max=35;
  4. for(i=0;i<max;i++){
  5.     if(this.txt.maxscroll == 1) {
  6.         b=this.txt.text.slice(0, max-i)+"...";
  7.     }
  8. }
  9. this.txt.text=b;
flozwo 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 09:52 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele