SetaPDF
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 14.11.2006, 15:47   #1
TP-Member
 
Registriert seit: Mar 2006
medieninf macht alles soweit korrekt

Warten auf Tastendruck mit Key.isDown


Hi,

mit if(Key.isDown(23)) kann ich ja prüfen, ob die Leertaste gedrück ist. Nun habe ich aber Text in ein Textfeld geschrieben und will erst weitere Aktionen machen, wenn die Leertaste gedrückt wurde.

Code:
// Meine Anweisungen vorher
// Warte auf Tastendruck
while(!Key.isDown(23)) { } 
// Meine Anweisungen nachher
funktioniert natürlich nicht, da eine Endlosschleife entsteht. Wie kann ich das Problem lösen?
medieninf ist offline   Mit Zitat antworten


Alt 14.11.2006, 15:55   #2
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
Ungetestet:
PHP-Code:
function check_key(){
  if(
Key.isDown(23)){
    
clearInterval(a);
    
play();
  }  
}
a=setInterval(check_key,500); 
stop(); 
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE || PS Kniffe
emCalculator 1.0



webcreate IT SOLUTIONS
www.webcreate-nrw.de
webcreate ist offline   Mit Zitat antworten
Alt 14.11.2006, 15:59   #3
TP-Moderator
 
Benutzerbild von Wanderratte
 
Registriert seit: Mar 2002
Wanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKE
oder mit einem Listener
PHP-Code:
var myListener:Object = new Object();
myListener.onKeyDown = function() {
    if (
Key.isDown(32)) {
        
trace("leertaste wurde gedrückt");
    }
};
Key.addListener(myListener); 
Übrigens ist der Ascii-Code 32 für die leertaste
__________________
Gruß

Wanderratte
Gebildet ist,
wer weiß,
wo er findet,
was er nicht weiß.

Eurokicker
Home
Amazon Wunschzettel
Wanderratte ist offline   Mit Zitat antworten
Alt 14.11.2006, 16:41   #4
TP-Member
 
Registriert seit: Mar 2006
medieninf macht alles soweit korrekt
Hi,

hmm. Ich will ja, das die Abarbeitung des Codes in dem aktuellen Frame nicht fortgesetzt wird, bis die Leertaste gedrückt wurde. stop(); hält doch nur den Film auf den aktuellen Frame an. Gibt es keine Möglichkeit die Codeabarbeitung anzuhalten und dann wieder fortzusetzen?
medieninf ist offline   Mit Zitat antworten
Alt 14.11.2006, 16:55   #5
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
Dann schreib den gewünschten Code in eine function und die rufst du dann mit Hilfe des Listeners auf.
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE || PS Kniffe
emCalculator 1.0



webcreate IT SOLUTIONS
www.webcreate-nrw.de
webcreate ist offline   Mit Zitat antworten
Alt 14.11.2006, 16:55   #6
TP-Moderator
 
Benutzerbild von Wanderratte
 
Registriert seit: Mar 2002
Wanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKEWanderratte ist ein richtiges Arbeitstier - DANKE
und wo ist jetzt das Problem ?
Du schreibst eine Funktion, wo dein ganzer Code drin ist der nicht abgearbeitet werden soll bis die Leertaste gedrückt wurde und rufst dann diese Funktion auf.
__________________
Gruß

Wanderratte
Gebildet ist,
wer weiß,
wo er findet,
was er nicht weiß.

Eurokicker
Home
Amazon Wunschzettel
Wanderratte ist offline   Mit Zitat antworten
Alt 15.11.2006, 09:43   #7
TP-Member
 
Registriert seit: Mar 2006
medieninf macht alles soweit korrekt

...


Hmm,

O.K., das geht. Wenn man diese Funktionalität aber häufiger brauchen würde, müsste ich die Funktion immer ändern bzw. eine neue erstellen, mit den Codeblöcken die abgearbeitet werden sollen.

Mir wäre es lieber gewesen, wenn ich die Ausführung des Script anhalten und fortsetzen könnte... Aber dann ist deine Lösung wohl die einzige Chance :-)

Noch eine Frage... Wieso muss ich, wenn ich ein Listener Objekt erzeuge immer auf die Klasse Object zurückgreifen? Wieso hat man nicht gleich eine eigene Klasse für Listener zur Verfügung gestellt. Object ist doch die allgemeinste, oder?

Vielen Dank.
medieninf ist offline   Mit Zitat antworten
Alt 15.11.2006, 16:29   #8
TP-Urgestein
 
Benutzerbild von webcreate
 
Registriert seit: Nov 2003
Ort: NRW
webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichtswebcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts
Zitat:
Zitat von medieninf
Wenn man diese Funktionalität aber häufiger brauchen würde, müsste ich die Funktion immer ändern bzw. eine neue erstellen, mit den Codeblöcken die abgearbeitet werden sollen.
Man kann auch eine function schreiben, die dann Vars übergeben bekommt und nur gewisse Teile abarbeitet. Großer Vorteil ist, das functions sehr dynamisch sind und bei oft verwendeten Arbeitsschritten eine Menge Code spart.
Bsp:
PHP-Code:
function test(foo:Number):Void {
    if(
foo == 1trace("Die gedrückte Taste ist eine Zifferntaste mit geradem Wert.");
    if(
foo == 2trace("Die gedrückte Taste ist eine Zifferntaste mit ungeradem Wert.");
    if(
foo == 3trace("Die gedrückte Taste ist keine Zifferntaste.");
}
var 
myListener:Object = new Object();
myListener.onKeyDown = function() {
    var 
raw:Number Key.getCode();
    if(
raw >=48 && raw <= 57){
        if(
raw%== 0test(1);
        else 
test(2);
    }
    else 
test(3);
}
Key.addListener(myListener); 
Zitat:
Zitat von medieninf
Wieso muss ich, wenn ich ein Listener Objekt erzeuge immer auf die Klasse Object zurückgreifen? Wieso hat man nicht gleich eine eigene Klasse für Listener zur Verfügung gestellt. Object ist doch die allgemeinste, oder?
Klar, aber wenn Wurst im Kühlschrank leer ist, schlachtest du dann selber ein Schwein, oder kaufst du neue Wurst im Supermarkt?
Object ist eine globale Function, die Flash schon von sich aus liefert und die sollte man dann auch verwenden.
Wozu also selber eine Klasse schreiben, wenn es schon eine gibt, die das erfüllt, was man haben will?
__________________
Gruß Mark
Mein Blog zum TP || XING Profil || grafiker.de Profil || How to use GOOGLE || PS Kniffe
emCalculator 1.0



webcreate IT SOLUTIONS
www.webcreate-nrw.de
webcreate ist offline   Mit Zitat antworten
Alt 20.11.2006, 13:51   #9
TP-Member
 
Registriert seit: Mar 2006
medieninf macht alles soweit korrekt

...


Ja, das man die Klasse nicht selber schreibt, wenn Sie da ist, leuchtet ein. Aber das halt in der allgemeinen Objekt Klasse die Listener Funktionalität "eingebaut" ist, finde ich nicht so logisch, wie wenn, für diese spezielle Aufgabe, von den Entwicklern die Listener Klasse auch Listener heißen würde und nicht alle möglichen Methoden in der Object Klasse liegen würden...

Trotzdem Danke. Nehm ich es halt als gegeben...
medieninf ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Flash
Warten auf Tastendruck mit Key.isDown Warten auf Tastendruck mit Key.isDown
« pfadangaben | FLV Stream »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:11 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67