Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-05-2004, 11:51   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2001
Ort: nahe Stuttgart
Beiträge: 22
Button, farbe verändern, unterklasse

Hallo Leute,
ich erstelle dynamisch eine große Menge Buttons (alle von dem button 'mapbut' weg). Jetzt würde ich gerne zur laufzeit die Farbe von bestimmten Buttons in der verschiedenen Zuständen (up,over,down) verändern. (color.setrgb auf den Button scheidet also aus). Deshalb habe ich die Farbfelder in dem Button durch MC's ersetzt (namen: up, over). Deren Farbe versuche ich jetzt festzulegen, aber das scheitert
ActionScript:
  1. farbe = new Color(but6x1.up);
  2. farbe.setRGB(0xFF0000);
auch ein
ActionScript:
  1. but6x1.up._visible=false;
bringt keine Änderung, eigentlich müßte der Button dann seinen Hintergrund verlieren, tut er aber nicht. Die MC's auf den Buttons haben alle richtige Instance-Namen, daran liegt es also auch nicht!

was gehen tut:
ich kann den button seine gesamtfarbe via
ActionScript:
  1. farbe = new Color(but6x1);
  2. farbe.setRGB(0xFF0000);

ändern!


hat mir jemand einen Tip, was ich falsch mache?

Danke
TO

Geändert von bdominik (14-05-2004 um 11:53 Uhr)
bdominik ist offline   Mit Zitat antworten
Alt 14-05-2004, 11:56   #2 (permalink)
Gedankengestalter
 
Benutzerbild von TheFreeman
 
Registriert seit: May 2002
Ort: Bayern
Beiträge: 486
lad doch mal das file hoch.
__________________
AS3 Lernhilfen
TheFreeman ist offline   Mit Zitat antworten
Alt 14-05-2004, 12:07   #3 (permalink)
Neuer User
 
Registriert seit: Oct 2001
Ort: nahe Stuttgart
Beiträge: 22
oki, ist angehängt! Habe es jetzt mit nur einem Button gemacht, aber das Problem ist das gleiche!
Angehängte Dateien
Dateityp: zip demo.zip (4,6 KB, 5x aufgerufen)
bdominik ist offline   Mit Zitat antworten
Alt 14-05-2004, 12:15   #4 (permalink)
Gedankengestalter
 
Benutzerbild von TheFreeman
 
Registriert seit: May 2002
Ort: Bayern
Beiträge: 486
Ich kann das File nicht öffnen.
Kannst Du das für die Version 6 speichern?
__________________
AS3 Lernhilfen
TheFreeman ist offline   Mit Zitat antworten
Alt 14-05-2004, 12:25   #5 (permalink)
Neuer User
 
Registriert seit: Oct 2001
Ort: nahe Stuttgart
Beiträge: 22
bitte schön!
Angehängte Dateien
Dateityp: zip demo1.zip (5,7 KB, 2x aufgerufen)
bdominik ist offline   Mit Zitat antworten
Alt 14-05-2004, 12:46   #6 (permalink)
Gedankengestalter
 
Benutzerbild von TheFreeman
 
Registriert seit: May 2002
Ort: Bayern
Beiträge: 486
Ich habe jetzt Deine Schaltfläche in einen MC gewandelt, in dem nur noch ein Objekt liegt, dessen Farbwerte vom Script gesteuert werden.

Ich hoffe, ich konnte Dir helfen.
Angehängte Dateien
Dateityp: rar demo_mc.rar (6,4 KB, 9x aufgerufen)
__________________
AS3 Lernhilfen
TheFreeman ist offline   Mit Zitat antworten
Alt 14-05-2004, 12:53   #7 (permalink)
Neuer User
 
Registriert seit: Oct 2001
Ort: nahe Stuttgart
Beiträge: 22
was ist den an meinem Vorschlag falsch, warum geht das nicht so? Weil: ich will nacher mit möglich wenig code einen zweiten Button erstellen, und den anders färben!

Aber danke schonmal!
bdominik ist offline   Mit Zitat antworten
Alt 14-05-2004, 13:40   #8 (permalink)
Gedankengestalter
 
Benutzerbild von TheFreeman
 
Registriert seit: May 2002
Ort: Bayern
Beiträge: 486
Naja, das ist doch ganz einfach.

Du brauchst auf jeden fall immer die zwei Funktionen.

Anstatt dort die Farben als code-String anzugeben, definierst du die jeweiligen Farben halt schon forher und rufst dann nur noch die jeweilige funktion mit dem richtigen Farbwert auf.

Ach was bla bla. Ich machs schnell......

Trag mal folgendes Script ein:
ActionScript:
  1. farbeover1 = "0xFF0000";
  2. farbeout1 = "0x00FF00";
  3. farbeover2 = "0xFF00FF";
  4. farbeout2 = "0xFFFF00";
  5.  
  6. makeButtons = function(wieviele){
  7.     var startposx = 15;
  8.     var startposy = 15;
  9.     for(var i=1;i<=wieviele;i++){
  10.         attachMovie('mapbut', 'but'add i, i);
  11.         eval("but"add i)._x = startposx;
  12.         eval("but"add i)._y = startposy;
  13.         startposx += 20;
  14.         startposy += 0;
  15.         maxsfs = i;
  16.     }
  17. };
  18.  
  19.     // Erstelle wieviele Schaltflächen?
  20. makeButtons(2);
  21.  
  22.    
  23. setObjektOver = function(objekt,farbton){
  24.     var farbe = new Color(objekt);
  25.     farbe.setRGB(farbton);
  26. };
  27.    
  28. setObjektOut = function(objekt,farbton){
  29.     var farbe = new Color(objekt);
  30.     farbe.setRGB(farbton);
  31. };
  32.  
  33. setButtonMouse = function(){
  34.     var temp;
  35.     for(var i=1;i<=maxsfs;i++){
  36.         temp = eval("but"add i);
  37.         temp.f = i;
  38.         temp.onRollOver = function(){ this.gotoAndStop(2); setObjektOver(this.up,_root["farbeover"add this.f]); };
  39.         temp.onRollOut = function(){ this.gotoAndStop(1); setObjektOut(this.up,_root["farbeout"add this.f]); };
  40.     }
  41. };
  42.  
  43. setButtonMouse();
  44.  
  45. stop();
__________________
AS3 Lernhilfen
TheFreeman ist offline   Mit Zitat antworten
Alt 14-05-2004, 13:56   #9 (permalink)
Neuer User
 
Registriert seit: Oct 2001
Ort: nahe Stuttgart
Beiträge: 22
hm, dass geht nicht, die buttons haben weiterhin ihre Stadart-Farbe.
Wiso geht eigentlich mein code nicht? wiso kann ich nicht die Frabe von dem MC setzten? Wiso scheiter der zugriff per .up ?

danke
TO
bdominik ist offline   Mit Zitat antworten
Alt 14-05-2004, 14:05   #10 (permalink)
Gedankengestalter
 
Benutzerbild von TheFreeman
 
Registriert seit: May 2002
Ort: Bayern
Beiträge: 486
ganz einfach, weil du objekte, die innerhalb von Schaltflächen-Objekten liegen nicht direkt ansprechen kannst.
__________________
AS3 Lernhilfen
TheFreeman ist offline   Mit Zitat antworten
Alt 14-05-2004, 14:06   #11 (permalink)
Gedankengestalter
 
Benutzerbild von TheFreeman
 
Registriert seit: May 2002
Ort: Bayern
Beiträge: 486
Hier das FIle mit dem neuen Script:
Angehängte Dateien
Dateityp: rar demo1.rar (5,6 KB, 16x aufgerufen)
__________________
AS3 Lernhilfen
TheFreeman 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 00:16 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele