Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-09-2008, 01:09   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2008
Beiträge: 3
Question Wie Button-Shape während Laufzeit ändern?

Hi.

Ich habe eine Frage zur Änderung von Buttons während der Laufzeit. Meine Flash-Movies lasse ich durch PHP just in time erstellen und mache die meiste Arbeit danach per ActionScript. Hier mal kurz wie in etwa ich die Buttons VOR der Laufzeit baue:
Code:
    function MakeButton($width, $height, $r, $g, $b)
    {
      $Shape = new SWFShape();
      $Shape->setLine(1,0,0,0);
      $Shape->setRightFill($Shape->addFill($r,$g,$b));
      $Shape->drawLine($width,0);
      $Shape->drawLine(0,$height);
      $Shape->drawLine(-$width,0);
      $Shape->drawLine(0,-$height);
      return $Shape;
    }
    $ButtonWidth=64;
    $ButtonHeight=19;
    for($UserID=0;$UserID<=4;$UserID++)
    {
      $UserButtonButton[$UserID]=new SWFButton();
      $UserButtonButton[$UserID]->addShape(MakeButton($ButtonWidth,$ButtonHeight,255,255,255),SWFBUTTON_UP|SWFBUTTON_HIT);
      $UserButtonButton[$UserID]->addShape(MakeButton($ButtonWidth,$ButtonHeight,255,255,128),SWFBUTTON_OVER);
      $UserButtonButton[$UserID]->addShape(MakeButton($ButtonWidth,$ButtonHeight,128,128,128),SWFBUTTON_DOWN);
      $UserButtonButton[$UserID]->addAction(new SWFAction("SelectKunde($UserID);"), SWFBUTTON_MOUSEUP);
      $UserButtonItem[$UserID]=$Movie->add($UserButtonButton[$UserID]);
      $UserButtonItem[$UserID]->moveTo(4+$UserID*$ButtonWidth,0);
      $UserButtonItem[$UserID]->setName('UserButton'.$UserID);

      $UserButtonText[$UserID]=new SWFTextField(SWFTEXTFIELD_NOEDIT|SWFTEXTFIELD_NOSELECT);
      $UserButtonText[$UserID]->setFont($Font);
      $UserButtonText[$UserID]->setColor(0,0,0);
      $UserButtonText[$UserID]->setHeight(12);
      $UserButtonText[$UserID]->addString('Kunde '.($UserID+1));
      $UserButtonTextItem[$UserID]=$Movie->add($UserButtonText[$UserID]);
      $UserButtonTextItem[$UserID]->moveTo(7+$UserID*$ButtonWidth,2);
      $UserButtonTextItem[$UserID]->setName('UserText'.$UserID);
    }
Vielleicht nicht elegant, aber es funktioniert.

Jetzt möchte ich später während der Laufzeit in der ActionScript-Funktion SelectKunde() das aussehen des Buttons ändern. Vielleicht einfach nur die Farbe des Buttons ändern, damit man sieht "Ah! Dieser ist ausgewählt.". Leider habe ich bisher keine Idee wie man das bewerkstelligen kann. Muss ich ein weiteres Shape hinzufügen (vor der Laufzeit) und irgendwie die Shapes auswechseln? Oder kann ich im Shape die Farben ändern?

Danke im Vorraus

<TheZock>
thezock 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 13:37 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele