Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29-11-2005, 21:40   #1 (permalink)
Co&Bold
 
Benutzerbild von Cysign
 
Registriert seit: Nov 2004
Ort: Troisdorf (bei Köln)
Beiträge: 170
Keylistener abfrage zu schnell?

Hallo, mein Problem ist folgendes:

Ich möchte ein Template für flashgesteuerte Präsentationen erstellen, das auf Tastendruck den Frame auf der Hauptzeitleiste steuert.

Die Hauptzeitleiste soll mit den Left/Right Tasten gesteuert werden.
Beim ersten Durchlauf klappt das auch soweit ganz gut, danach jedoch überspringt Flash manchmal einen Frame, weil - ich vermute - der Keylistener zu schnell reagiert?

PHP-Code:
stop();
function 
tastatur_abfrage() {
    
keyListener = new Object();
    
keyListener.onKeyDown = function() {
        if (
Key.getCode() == Key.LEFT) {
            
_root.gotoAndStop(--_root._currentframe);
            
trace(_root._currentframe);
        } else if (
Key.isDown(Key.RIGHT)) {
            
_root.gotoAndStop(++_root._currentframe);
        }
    };
    
Key.addListener(keyListener);
}
tastatur_abfrage(); 
wenn ich rechts/links abwechselnd drücke sollte ich wieder auf frame 1 oder 2 kommen. aber wenn ich ein paar mal hin und her springe bekomme ich folgende ausgabe:

PHP-Code:
4
3
2
1
4
3
2
1
4
3
2
4
3
2
4
3
2
4
3
2
4
3
2
1
1
1
4
3
2
1
4
3
2
1

__________________
Friede!
Cysign ist offline   Mit Zitat antworten
Alt 29-11-2005, 21:42   #2 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
wird dabei die function "tastatur_abfrage();" mehrmals aufgerufen? wenn ja sollteste zuvor den alten listener entfernen...

cya, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar ist offline   Mit Zitat antworten
Alt 30-11-2005, 22:56   #3 (permalink)
Co&Bold
 
Benutzerbild von Cysign
 
Registriert seit: Nov 2004
Ort: Troisdorf (bei Köln)
Beiträge: 170
PHP-Code:
stop();
function 
tastatur_abfrage() {
    
keyListener = new Object();
    
keyListener.onKeyDown = function() {
        if (
Key.getCode() == Key.LEFT) {
            
_root.gotoAndStop(--_root._currentframe);
            
trace(_root._currentframe);
        } else if (
Key.isDown(Key.RIGHT)) {
            
_root.gotoAndStop(++_root._currentframe);
        }
    };
    
Key.addListener(keyListener);
}
tastatur_abfrage(); 
da jetzt quasi das einbauen:
Key.removeListener(keyListener);

und zwar so:
PHP-Code:
stop();
function 
tastatur_abfrage() {
    
Key.removeListener(keyListener);
    
keyListener = new Object();
    
keyListener.onKeyDown = function() {
        if (
Key.getCode() == Key.LEFT) {
            
_root.gotoAndStop(--_root._currentframe);
            
trace(_root._currentframe);
        } else if (
Key.isDown(Key.RIGHT)) {
            
_root.gotoAndStop(++_root._currentframe);
        }
    };
    
Key.addListener(keyListener);
}
tastatur_abfrage(); 
hat leider nicht funktioniert.
das script ist in einem keyframe1 der sich bis hin zu bild 50 erstreckt.
__________________
Friede!
Cysign 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 18:25 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele