Autor |
Nachricht |
sebjo
Threadersteller
Dabei seit: 07.10.2003
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 06.12.2004 16:20
Titel _visibility fade in |
|
|
visibility von meinem mc ist auf false gesetzt weil er Schaltflächen enthält die sonst aktiv bleiben würden.
Nun möchte ich den mc reinfaden. Erst müsste ich ja dann die visibility auf true setzen und dann den fade in code anfügen.
hier mein code der auf der Schaltfläche liegt die den fade in auslösst:
on (release) {
gotoAndStop(2);
this._parent.infoTxt_mc._visible = true;
this._parent.infoTxt_mc._alpha = 0;
this._parent.infoTxt_mc._alpha++;
}
ist warscheinlich nicht die eleganteste Lösung und der alpha++ teil functioniert nicht.
kann mir jemand sagen worans liegt oder wie ichs besser machen kann
SEb
|
|
|
|
|
lubux
Dabei seit: 24.03.2004
Ort: münster
Alter: 43
Geschlecht:
|
Verfasst Mo 06.12.2004 18:20
Titel
|
|
|
selbst wenn's gehen würde, würdest du alpha damit nur um 1 erhöhen je release.
bastel dir einen MC der mit dem button abgespielt wird und den einzublendenden film bild für bild einblendet.
stichwort controller. aber so ganz peil ich auch nich, was du genau willst...
|
|
|
|
|
Anzeige
|
|
|
tuxedo
Dabei seit: 10.10.2002
Ort: ~/
Alter: 51
Geschlecht: -
|
Verfasst Mo 06.12.2004 18:30
Titel
|
|
|
natürlich funzt das nicht....
wenn du den alphawert "einfaden" willst, dann musst du das schon auf
einem kontinuierlichen eventhandler machen, sprich z.b. onEnterFrame.
du könntest auch mit setInterval einen timergesteuerten aufruf starten,
der deinen gewünschten targetMc einfadet...
deine lösung, selbst wenn der code korrekt wäre, würde den alphawert
nur um einen erhöhen, nicht jedoch um 100<...
// edit
ich hab mal vor ner zeit ein object-prototype geschrieben, welches
ein/ausfaden kann. das ganze ist timergesteuert und delaygesteuert
und du hast die möglichkeit, die gefadeten objecte zu aktivieren bzw.
deaktivieren.
wenn du bock hast, kann ich dir das script zur verfügung stellen...
durch die kommentare ist das teil eigentlich selbsterklärend...
//
Zuletzt bearbeitet von tuxedo am Mo 06.12.2004 19:34, insgesamt 1-mal bearbeitet
|
|
|
|
|
sebjo
Threadersteller
Dabei seit: 07.10.2003
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 06.12.2004 19:30
Titel
|
|
|
Lubux, Danke für die Antwort aber ich kapier leider nicht was du mit Stichwort controller in diesem zusammenhang meinst. Vielleicht kannst Du das ja mal erklären.
Tuxedo, das klingt wirklich interresant nur ich glaube mein AS Kenntnis reicht mir nicht um das umzusetzen. Wäre klasse wenn Du mir das mal mit code beschreiben könntest.
SEb
|
|
|
|
|
tuxedo
Dabei seit: 10.10.2002
Ort: ~/
Alter: 51
Geschlecht: -
|
Verfasst Mo 06.12.2004 19:41
Titel
|
|
|
zur rechten zeit editiert...hrhr
Code: |
Object.prototype.fadeObject = function (direction,finalAlpha,seconds,delay,active) {
/*
**************************************************************************************************
flashFader 0.1, 2004 by sascha hölterhoff
**************************************************************************************************
call: object. fadeObject (-1- ,-2-,-3-,-4-,-5-);
parameters:
**************************************************************************************************
-1- = fade in (set to "in") or fade out (set to "out")
-2- = desired alpha-value (range 0-100)
-3- = fading-time in seconds (0 fades directly)
-4- = indicates when fader should start in seconds (0 starts directly)
-5- = boolean, set object active (true) or inactive (false) after fader ends
**************************************************************************************************
*/
var targetObject = this;
if (!targetObject._visible){
targetObject._visible = true;
}
targetObject.clearInterval (delayer);
targetObject.clearInterval (timer);
if (direction == "in"){
var difference = this._alpha - finalAlpha;
} else if (direction == "out"){
var difference = finalAlpha - this._alpha;
}
var sekunden = seconds *= 100;
var activate = active;
var value = difference/sekunden;
var alpha = this._alpha;
var counter = 0;
var waitTime = delay *= 1000;
var delayTimer = function () {
clearInterval(delayer);
fadeIt();
};
var delayer = setInterval(delayTimer, waitTime);
var fadeIt = function () {
var startZeit = getTimer();
var objectFader = function () {
counter++;
if (direction == "in"){
alpha -= value;
} else if (direction =="out"){
alpha += value;
}
targetObject._alpha = alpha
if (counter == sekunden) {
clearInterval(timer);
var endTime = getTimer();
var Time = endTime-startZeit;
if (!activate && targetObject._alpha == 0){
targetObject._visible = activate;
}
return true;
}
};
var timer = setInterval(objectFader, 10);
};
};
|
also das funktioniert so:
1) pack dir den quellcode in deinen film...
2) aufruf des fadings via
Code: |
deinMC/Button.fadeObject(parameterübergabe);
|
wobei die parameter z.b. so aussehen:
Code: |
test_mc.fadeObject("out",0,0.2,2,true);
|
dieser funktionsaufruf fadet den mc "test_mc" aus, und zwar auf alpha 0.
der fade dauert 0.2 sekunden, der fade startet nach zwei sekunden....
ich muss übrignens anmerken, das ich irgendwann mal an dem teil gestrickt habe, weil
ichs brauchte und mich danach net mehr damit beschäftigt habe. es kann also sein, das
es zu dem ein doer anderen bug kommt...
denke aber, zum grundverständnis sollte es ausreichen...
|
|
|
|
|
sebjo
Threadersteller
Dabei seit: 07.10.2003
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Mo 06.12.2004 21:03
Titel
|
|
|
Tux
Tausend Dank
Ich muss nur sehen das ich da den code raussuche den ich wirklich brauche.
Möchte das ganze auf das notwendigste reduzieren.
SEb
|
|
|
|
|
myel
Dabei seit: 19.01.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mo 06.12.2004 21:14
Titel
|
|
|
du brauchst alles. das is ein prototype, der läuft nur intakt, da kannste nicht einfach was wegnehmen.
tipp für dich http://www.kirupa.com/ (such mal nach prototypes).
für deinen wissensstand ist vielleicht ne onEnterFrame-Lösung auch akzeptabel, aber sowas lernst du bei kirupa, und eigentlich auch recht schnell.
z.B. http://www.kirupa.com/developer/mx/alpha_fade.htm (und dann kannst du auch nur das wichtige rausnehmen )
tuxedo: hast du noch mehr prototypes die du der öffentlichkeit zu verfügung stellen würdest *gierigschau*...
|
|
|
|
|
|
|
|
Ähnliche Themen |
Flash 8 // fade in/fade out // ActionScript Problem
java visibility??
[HTML] Visibility im IE6 ?
Problem mit div-visibility und animation
opacity Fade-in Fade-out
Bilder-Fade
|
|