Benutzer-Werkzeuge

Webseiten-Werkzeuge


api:documentation:ein_ausgabe:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
api:documentation:ein_ausgabe:start [2024/08/31 10:03] – angelegt - Externe Bearbeitung 127.0.0.1api:documentation:ein_ausgabe:start [2025/01/09 19:06] (aktuell) – [Textausgabe] martin
Zeile 50: Zeile 50:
 println("Hallo Welt!"); println("Hallo Welt!");
 print("Das hier steht "); print("Das hier steht ");
-println("direkt hintereinander!")+println("direkt hintereinander!");
 </script> </script>
  
Zeile 102: Zeile 102:
 </HTML> </HTML>
  
 +
 +
 +===== Auf Tastendruck warten =====
 +<WRAP center round info 60%>
 +Die Methode ''Input.waitForKey()'' bewirkt, dass der aktuelle Thread wartet, bis der User eine Taste gedrückt hat. Diese wird dann als ''String''-Wert zurückgeliefert.
 +  * Übergibt man der Methode ''String''-Werte, so werden nur die Tastendrucke akzeptiert, die diesen Werten entsprechen, z.B. akzeptiert ''Input.waitForKey("a", Keys.ArrowLeft)'' nur die Tasten ''a'' und <-.
 +</WRAP>
 +<HTML>
 +
 +<div class="java-online" style="height: 200px; width: 100%" data-java-online="{'withBottomPanel': false, 'id': 'texteingabe3'}">
 +
 +<script type="text/plain" title="Textausgabe3.java">
 +println("Drücken Sie auf die Tasten!");
 +while(true){
 +   String key = Input.waitForKey();
 +   print("Sie haben die Taste ");
 +   print(key, Color.lightblue);
 +   println(" gedrückt.");
 +}
 +</script>
 +
 +</div>
 +
 +</HTML>
 +
 +Auf diese Weise lässt sich auch interaktive Grafik verwirklichen:
 +
 +<HTML>
 +
 +<div class="java-online" style="height: 350px; width: 100%" data-java-online="{'withBottomPanel': false, 'id': 'texteingabe4'}">
 +
 +<script type="text/plain" title="Texteingabe4.java">
 +println("Steuern Sie den Kreis mit den Cursortasten!");
 +Circle c = new Circle(400, 300, 50);
 +while(true){
 +   String key = Input.waitForKey();
 +   switch(key){
 +      case Key.ArrowLeft: c.move(-5, 0); break;
 +      case Key.ArrowRight: c.move(5, 0); break;
 +      case Key.ArrowUp: c.move(0, -5); break;
 +      case Key.ArrowDown: c.move(0, 5); break;
 +   }
 +}
 +</script>
 +
 +</div>
 +
 +</HTML>
 +
 +
 +
 +
 +Noch besser geht es mit ''Input.isKeyDown'', das den Programmfluss nicht unterbricht:
 +
 +<HTML>
 +
 +<div class="java-online" style="height: 350px; width: 100%" data-java-online="{'withBottomPanel': false, 'id': 'texteingabe5'}">
 +
 +<script type="text/plain" title="Texteingabe5.java">
 +SystemTools.setSpeed(2000);
 +println("Steuern Sie das Rechteck mit den Cursortasten!");
 +Rectangle r = new Rectangle(350, 250, 100, 100);
 +while (true) {
 +   if(Input.isKeyDown(Key.ArrowRight)) r.move(1, 0);
 +   if(Input.isKeyDown(Key.ArrowLeft)) r.move(-1, 0);
 +   if(Input.isKeyDown(Key.ArrowUp)) r.move(0, -1);
 +   if(Input.isKeyDown(Key.ArrowDown)) r.move(0, 1);
 +  r.rotate(1);
 +}
 +</script>
 +
 +</div>
 +
 +</HTML>
  
  
api/documentation/ein_ausgabe/start.1725098581.txt.gz · Zuletzt geändert: 2024/08/31 10:03 von 127.0.0.1