Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 06-08-2009, 14:14   #1 (permalink)
Neuer User
 
Registriert seit: Apr 2009
Beiträge: 7
Label auf Button durchklickbar machen

Hi,

ich habe einen Schaltfläche in Flash erstellt. Das Label kommt aus einer XML, welches ich per AS3 auf den button adde.
Problem: Ich kann mit der Maus auf dem Label keine Schaltflächen - States triggern, da das Label separat vom CustomSimpleButton erstellt wird und anschließend geaddet wird.

PS: Die Klasse Button() ist die LinkageID der Schaltfläche

Frage1: Wie kann ich das label:Sprite "durchklickbar", bzw komplett nicht-interaktiv machen, dass die darunterliegende Schaltfläche triggert?
Frage2: Wie kann ich alternativ das Label über alle States legen? Ich möchte ungern 3 (identische) Instanzen des Labels anlegen.

Wäre nett, wenn mir jemand helfen könnte.
Vielen Dank.

ActionScript:
  1. contentBox.addChild(new TopEventButton(nodeTop.childNodes[0], bulkLoader.getBitmap("top"+nodeTop.childNodes[0].attributes.id+nodeTop.childNodes[0].attributes.label), y));
ActionScript:
  1. class TopEventButton extends Sprite
  2. {
  3.     public function TopEventButton(node:XMLNode, labelImg:DisplayObject, y:Number)
  4.     {
  5.             var lblButtonDate:Label;
  6.             var lblButtonEventName:Label;
  7.            
  8.             var label:Sprite = new Sprite();
  9.             label.addChild(labelImg);
  10.            
  11.             lblButtonDate = new Label();
  12.             lblButtonDate.text = node.attributes.sdate;
  13.            
  14.             lblButtonEventName = new Label();
  15.             lblButtonEventName.text = node.attributes.title;
  16.            
  17.             label.addChild(lblButtonDate);
  18.             label.addChild(lblButtonEventName);
  19.            
  20.             var button:CustomSimpleButton = new CustomSimpleButton();
  21.            
  22.             button.y = y;
  23.             button.x = 1;
  24.             button.width = 350;
  25.             label.y = y;
  26.             this.addChild(button);
  27.             this.addChild(label);
  28.     }
  29. }
ActionScript:
  1. public class CustomSimpleButton extends SimpleButton {
  2.         private var mc : MovieClip;
  3.  
  4.         public function CustomSimpleButton() {
  5.        
  6.             mc = new MovieClip();
  7.             mc.addChild(new Button().downState);
  8.             downState=mc;
  9.            
  10.             mc = new MovieClip();
  11.             mc.addChild(new Button().overState);
  12.             overState=mc;
  13.            
  14.             mc = new MovieClip();
  15.             mc.addChild(new Button().upState);
  16.             upState=mc;
  17.            
  18.             hitTestState=new ButtonDisplayState(upColor, buttonWidth, buttonHeight);
  19.             hitTestState.x = 0;
  20.             hitTestState.y = hitTestState.x;
  21.  
  22.             useHandCursor=true;
  23.         }
  24.     }

Geändert von megalap (06-08-2009 um 14:27 Uhr) Grund: AS Tags hinzugefügt
megalap 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 11:53 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele