Master SWF
%Europe/Berlin %855 %2007, 21:32
Heey,
Ik zit met een probleem, ik probeer in een presentatieprogrammaatje dat ik aan het schrijven ben een functie in te bouwen dat als je met je muis voor 5 seconden niet beweegt er twee balken verdwijnen (bovenaan en onderaan het scherm, deze geven de titel en het aantal dia's weer). Aangezien flash alleen kan controleren of de muis beweegt en niet of hij niet beweegt, moet je dus gaan werken met wanneer de muis beweegt...
Het probleem zit hem erin dat ik een timeout laat lopen, die een functie uitvoert die die balken laat verdwijnen, tenzij de muis beweegt, dan word de timeout gecleared en opnieuw gestart... Dit lijkt prachtig te werken, maar de balken gaan knipperen na enkele seconden (steeds erger) ... dus ik wil aan jullie vragen of jullie hier een oplossing voor weten.
Hier is mijn actionscript (staat op frame 1)
import mx.transitions.Tween; //importeren van de effecten voor het oplaten komen en verdwijnen van het menu....
import mx.transitions.easing.*;//""
var mouseListener:Object = new Object();
var menuStatus:String = new String();
showMenu(); // voer de functie showMenu uit...
var mouseMoveCheck:Number = setTimeout(hideMenu, 5000);
mouseListener.onMouseMove = function ()
{
clearTimeout(mouseMoveCheck);
keepMenu();
var mouseMoveCheck:Number = setTimeout(hideMenu, 5000);
Mouse.show();
}
function keepMenu()
{
if(_root.menuStatus = "hidden")
{
showMenu();
}
}
function showMenu()
{
new Tween(SlideIndicator_mc, "_alpha", Strong.easeIn, 0, 100, 1, true);
new Tween(titleBar_mc, "_alpha", Strong.easeIn, 0, 100, 1, true);
_root.menuStatus = "shown";
}
function hideMenu()
{
new Tween(SlideIndicator_mc, "_alpha", Strong.easeIn, 100, 0, 1, true);
new Tween(titleBar_mc, "_alpha", Strong.easeIn, 100, 0, 1, true);
_root.menuStatus = "hidden";
Mouse.hide();
}
Mouse.addListener(mouseListener);
In de bijlage zit de .fla (CS3 en Flash 8 versie), om het probleem te verduidelijken...
Ik zit met een probleem, ik probeer in een presentatieprogrammaatje dat ik aan het schrijven ben een functie in te bouwen dat als je met je muis voor 5 seconden niet beweegt er twee balken verdwijnen (bovenaan en onderaan het scherm, deze geven de titel en het aantal dia's weer). Aangezien flash alleen kan controleren of de muis beweegt en niet of hij niet beweegt, moet je dus gaan werken met wanneer de muis beweegt...
Het probleem zit hem erin dat ik een timeout laat lopen, die een functie uitvoert die die balken laat verdwijnen, tenzij de muis beweegt, dan word de timeout gecleared en opnieuw gestart... Dit lijkt prachtig te werken, maar de balken gaan knipperen na enkele seconden (steeds erger) ... dus ik wil aan jullie vragen of jullie hier een oplossing voor weten.
Hier is mijn actionscript (staat op frame 1)
import mx.transitions.Tween; //importeren van de effecten voor het oplaten komen en verdwijnen van het menu....
import mx.transitions.easing.*;//""
var mouseListener:Object = new Object();
var menuStatus:String = new String();
showMenu(); // voer de functie showMenu uit...
var mouseMoveCheck:Number = setTimeout(hideMenu, 5000);
mouseListener.onMouseMove = function ()
{
clearTimeout(mouseMoveCheck);
keepMenu();
var mouseMoveCheck:Number = setTimeout(hideMenu, 5000);
Mouse.show();
}
function keepMenu()
{
if(_root.menuStatus = "hidden")
{
showMenu();
}
}
function showMenu()
{
new Tween(SlideIndicator_mc, "_alpha", Strong.easeIn, 0, 100, 1, true);
new Tween(titleBar_mc, "_alpha", Strong.easeIn, 0, 100, 1, true);
_root.menuStatus = "shown";
}
function hideMenu()
{
new Tween(SlideIndicator_mc, "_alpha", Strong.easeIn, 100, 0, 1, true);
new Tween(titleBar_mc, "_alpha", Strong.easeIn, 100, 0, 1, true);
_root.menuStatus = "hidden";
Mouse.hide();
}
Mouse.addListener(mouseListener);
In de bijlage zit de .fla (CS3 en Flash 8 versie), om het probleem te verduidelijken...