Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Wie kann ich mit Java eine Tastatureingabe simmulieren ?
also bis jetzt habe ich immer nur die Tastatur abgefragt ob eine Eingabe erfolgt ist.
Wie kann ich aber simulieren, dass mein Programm z.B. all 10 min die Taste eins drückt.
Ich meine nicht damit das er nur eine schleife mit einem Zähler macht und dann die eins ausgibt. Ne so das der Computer denkt die Taste eins ist gedrückt worden.
Bitte jetzt nicht lachen, aber könntest Du mir noch einmal helfen ?
Ich habe einfach mal schnell ein kleines Prog gemacht. Aber leider geht es nicht. Was mach ich denn falsch bei der Benutzung.
Danke
Code:
import java.awt.Robot.*;
public class test
{
public static void main(String[] args)
{
int a=0,b=10000;
double c;
for (c=a;c<b;c++)
{
System.out.println (c);
}
a=a+1;
public void keyPress(int VK_NUMPAD1);
System.out.println ("jo es rennt");
}
}
Ja ich bin total durch den Wind jetzt ich habe es auch so versucht.
Code:
import java.awt.Robot.*;
import java.awt.*;
import java.io.*;
import java.awt.event.*;
public class test
{
public static void main(String[] args)
{
int a=0,b=10000;
double c;
for (c=a;c<b;c++)
{
System.out.println (c);
}
a=a+1;
Robot r = new Robot();
r.keyPress(KeyEvent.VK_A);
System.out.println ("jo es rennt");
}
}
Ich habe es bis jetzt sehr uimständlich, dass er wieder zu einem Punkt im Programm springt.
Ich mache es mit einer do wihle schliefe und einem Merker.
Gibt es nicht so ein Befehl jump to 32 oder so. Damit er das immer wieder ausfüht ?
sowas wie das
Code:
2
import java.awt.Robot.*;
import java.awt.*;
import java.io.*;
import java.awt.event.*;
public class test
{
public static void main(String[] args)
{
int a=0,b=10000;
double c;
for (c=a;c<b;c++)
{
System.out.println (c);
}
a=a+1;
Robot r = new Robot();
r.keyPress(KeyEvent.VK_A);
System.out.println ("jo es rennt");
[color=darkred] Jump to12[/color]
}
}
Ja das kenne ich und ich habe es auch runtergeladen @ home. Aber gerade weil das hier ein Forum ist für anfänger sollte ich doch für solche Fragen hier richtig sein.
Na und warum benutzt du das Buch dann nicht? Lesen bildet. Und wir sind ja nicht dazu da dir das lesen abzunehmen. Im Buch ist sowas Grundlegendes recht weit vorne erklärt wird.
Kannst ja mal nach "while" oder "for" suchen.
Nein, ein JUMP gibt es in Java nicht. Und das ist auch gut so. Und was sollte ein JUMP an der Stelle einfacher machen, was mit While oder For nicht schon einfach genug wäre?
1968 zeigte Edsger W. Dijkstra in seinem Aufsatz Go To Statement Considered Harmful (der Titel geht allerdings auf N. Wirth zurück), dass in einer strukturierten Programmiersprache der Goto-Befehl völlig entbehrlich ist. Diese Meinung wurde in der Programmierausbildung bald zum Dogma erhoben; in einigen Sprachen wie Java wurde bewusst überhaupt kein Goto-Befehl eingeführt (abgesehen von einem „gelabelten“ break – Schlüsselwort).
Und ich verdeutliche jetzt zum zweiten mal dass es nix einfacheres gibt weil "while" und "for" auch schon easy genug sind und sogar noch vorteilhafter sind.
nochmal was zu Label und Goto. Wer sich schon mal intensiver den Quellcode des Linuxkernels angeschaut hat, dem wird auffallen, dass dort häufiger Sprungbefehle benutzt werden.
Meist in der Form:
Code:
InitSomeThingA()
if errorCode != 0 Goto A;
InitSomeThingB()
if errorCode != 0 Goto B;
InitSomeThingC()
if errorCode != 0 Goto C;
InitSomeThingD()
if errorCode != 0 Goto D;
InitSomeThingE()
if errorCode != 0 Goto E;
Goto normal;
E:
destroyInitDObject();
D:
destroyInitCObject();
C:
destroyInitBObject();
B:
destroyInitAObject();
A:
return -1
normal:
//mache hier normal weiter
Das mal so als Hinweis. Diese Vorgehensweise erspart doppeltes Aufräumen von Objecten bei Fehlschlägen oder andere schwer zu lesende Verrenkungen.
nein hierbei geht es im wesentlichen darum, dass man den Kernel nicht alleine Programmiert und sich somit andere schnellere durch solche Initprozesse hangeln können.
Am besten du schreibst oben genanntes mal um, ohne Verwendung Goto. Dann sieht man welches sich besser liest und welches nicht.