Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25-08-2003, 16:20   #1 (permalink)
adicted
 
Benutzerbild von Knoude
 
Registriert seit: May 2003
Ort: irgendwo in Neufünfland
Beiträge: 88
Alpha verändern auf Knopfdruck

Hallo Ihr,

ich hoffe Jemand kann mir bei meinem Problem helfen:

in einer swf befinden sich 2 mc`s, in mc1 ist ein Button und in mc 2 ein Bild.
Nun soll beim klick auf den Button das bild in mc2 eine Deckkraft von 10% bekommen und beim Erneuten Klick wieder eine Deckkraft von 100%.

Das problem ist, das der "else if" - Zweig der Funktion nicht angesprochen wird. Kann mir nicht erklären woran es liegt.

Das Script auf dem Button:

ActionScript:
  1. button.onrelease = function() {
  2.      if
  3.     (mov._alpha == 100) {
  4.      _root.mov.onEnterFrame = function() {
  5.     if
  6. (_root.mov._alpha >= 10)
  7. { _root.mov._alpha += -10; }
  8. };
  9.      }
  10.  
  11. // Ab Hier funtionierts nicht mehr.   
  12. else if
  13.    (mov._alpha == 10) {
  14.     _root.mov.onEnterFrame = function() {
  15.     if
  16. (_root.mov._alpha >= 10)
  17. { _root.mov._alpha += -10; }
  18. };
  19.    }
  20. }
__________________
Gruß, der Knut

Ein Optimist ist ein Mensch der die Dinge nicht so tragisch nimmt, wie sie eigentlich sind.
Knoude ist offline   Mit Zitat antworten
Alt 25-08-2003, 16:59   #2 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
mit genauen werten ist da schlech zum abfragen
probie das mal.
ActionScript:
  1. _root.mov.fade=-10
  2. button.onrelease = function() {
  3.         if (mov._alpha >= 100 || mov._alpha <=10) {
  4.                 _root.mov.onEnterFrame = function() {
  5.                     this._alpha += this.fade ;
  6.                         if(this._alpha < 10 || this._alpha >100){
  7.                          if(this._alpha < 10 ){this._alpha=10}
  8.                         this.fade*=(-1) 
  9.                         delete this.onEnterFrame
  10.                         }
  11.                 };
  12.         }
  13. }
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 25-08-2003, 16:59   #3 (permalink)
Hirnverbrannt
 
Benutzerbild von NastyFrog
 
Registriert seit: Aug 2001
Ort: AUSTRIA
Beiträge: 2.020
Hmm, also du machst ja im else if das gleich wie im if. Irgendwie komm ich da nicht ganz mit:
ActionScript:
  1. button.onrelease = function() {
  2. if (mov._alpha == 100) {
  3. _root.mov.onEnterFrame = function() {
  4. if (_root.mov._alpha > 10) {
  5. _root.mov._alpha -= 10;
  6. delete this.onEnterFrame;
  7. }
  8. }
  9. }
  10.        
  11. // Ab Hier funtionierts nicht mehr.
  12. else if (mov._alpha == 10) {
  13. _root.mov.onEnterFrame = function() {
  14. if (_root.mov._alpha < 100) {
  15. _root.mov._alpha += 10;
  16. delte this.onEnterFrame;
  17. }
  18. }
  19. }
  20. }

Ich glaub so meinst du das.
__________________
50 Seiten hardcore ActionScript von den Grundlagen bis zu 3D Darstellungen.... eben eine Abendlektüre.

Dogs fucked the Pope, no fault of mine. Watch out! ... Why money? My name is Brinks; I was born ... born? Get sheep over side ... women and children to armored car ... orders from Captain Zeep.(Hunter S. Thompson)
NastyFrog ist offline   Mit Zitat antworten
Alt 26-08-2003, 08:12   #4 (permalink)
adicted
 
Benutzerbild von Knoude
 
Registriert seit: May 2003
Ort: irgendwo in Neufünfland
Beiträge: 88
@ nasty frog

Wenn ich bei deinem script das "delete this.onEnterFrame;" deaktiviere und im "else if" zweig statt (mov._alpha == 10),
(mov._alpha = 10) schreibe funktionierts fast:

die Funktion wird einmal durchgegangen, bloß dann bleibt das ganze in der "else if" schleife hängen ( es wird immer nur der part abgespielt, wo von 10 auf 100 aufgeblendet wird.
__________________
Gruß, der Knut

Ein Optimist ist ein Mensch der die Dinge nicht so tragisch nimmt, wie sie eigentlich sind.
Knoude ist offline   Mit Zitat antworten
Alt 26-08-2003, 10:30   #5 (permalink)
Hirnverbrannt
 
Benutzerbild von NastyFrog
 
Registriert seit: Aug 2001
Ort: AUSTRIA
Beiträge: 2.020
Stimmt, war ein Fehler von mir. So funkts jetzt:
ActionScript:
  1. button.onrelease = function() {
  2.     trace(_root.mov._alpha);
  3.         if (_root.mov._alpha >= 100) {
  4.                 _root.mov.onEnterFrame = function() {
  5.                         if (this._alpha > 10) {
  6.                                 this._alpha -= 10;
  7.                         } else  {
  8.                             delete this.onEnterFrame;
  9.                         }
  10.                 }
  11.         }
  12.        
  13.         // Ab Hier funtionierts nicht mehr.
  14.         else if (_root.mov._alpha <= 10) {
  15.                 _root.mov.onEnterFrame = function() {
  16.                         if (this._alpha < 100) {
  17.                                 this._alpha += 10;
  18.                                
  19.                         } else {
  20.                             delete this.onEnterFrame;
  21.                         }
  22.                 }
  23.         }
  24. }
__________________
50 Seiten hardcore ActionScript von den Grundlagen bis zu 3D Darstellungen.... eben eine Abendlektüre.

Dogs fucked the Pope, no fault of mine. Watch out! ... Why money? My name is Brinks; I was born ... born? Get sheep over side ... women and children to armored car ... orders from Captain Zeep.(Hunter S. Thompson)
NastyFrog ist offline   Mit Zitat antworten
Alt 26-08-2003, 10:45   #6 (permalink)
adicted
 
Benutzerbild von Knoude
 
Registriert seit: May 2003
Ort: irgendwo in Neufünfland
Beiträge: 88
Thumbs up @ nastyfrog

Ich verneige mich in tiefem Respekt vor Dir und Deinen Fähigkeiten!

Danke!!!
__________________
Gruß, der Knut

Ein Optimist ist ein Mensch der die Dinge nicht so tragisch nimmt, wie sie eigentlich sind.
Knoude ist offline   Mit Zitat antworten
Alt 26-08-2003, 10:48   #7 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi @NastyFrog
script funkioniert nur sollte mann jedesmal alpha dann auf 10
setzten sonst verschwindet es bei mehrmaligem wechsel.
(flash umrechnug).siehe script weiter oben.
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 26-08-2003, 15:51   #8 (permalink)
Hirnverbrannt
 
Benutzerbild von NastyFrog
 
Registriert seit: Aug 2001
Ort: AUSTRIA
Beiträge: 2.020
Also ich habs jetzt so 20 mal gedrück und es is noch immer alles da und funkt. Ich hab ja schon < 10 und >100
__________________
50 Seiten hardcore ActionScript von den Grundlagen bis zu 3D Darstellungen.... eben eine Abendlektüre.

Dogs fucked the Pope, no fault of mine. Watch out! ... Why money? My name is Brinks; I was born ... born? Get sheep over side ... women and children to armored car ... orders from Captain Zeep.(Hunter S. Thompson)
NastyFrog 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 07:51 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele