UHUahuahuaua…é sim…
Bom ai o problema cresce, mas nem tanto…esses troço doido são o F5 no notepad :·)
O que ocorre é que pra digitar com o robot temos que emular as teclas do teclado. Elas não disparam caracteres acsII… Não sei porque!!! O teclado envia inteiros que são resolvidos peo SO.
O java emula isso com eventkeys.
Bom como não arrumei nada na API que converta strings para KeyEvent inventei umas gambiarras ai…huahuaua
Repara não hein…agora faz o que vc queria…ainda não entendo pra que usar robot, mas funciona.
Ah se quiser que outros caracteres sejam analisados basta acrescentar no switch…
package teste;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import java.io.IOException;
public class Strings {
public Strings(){
super();
}
public int returnIndex(char toIndex, char... args) {
for (int i=0; i<args.length; i++) {
if (toIndex == (args[i]) )
return i;
}
return -1;
}
public int getKeyEvt(char caracter){
int keyInput = -1;
switch (returnIndex(caracter,
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
'i', 'j', 'l', 'm', 'n', 'o', 'p', 'q',
'r', 's', 't', 'u', 'v', 'x', 'z')) {
case 0 :
keyInput = KeyEvent.VK_A;
break;
case 1 :
keyInput = KeyEvent.VK_B;
break;
case 2 :
keyInput = KeyEvent.VK_C;
break;
case 3 :
keyInput = KeyEvent.VK_D;
break;
case 4 :
keyInput = KeyEvent.VK_E;
break;
case 5 :
keyInput = KeyEvent.VK_F;
break;
case 6 :
keyInput = KeyEvent.VK_G;
break;
case 7 :
keyInput = KeyEvent.VK_H;
break;
case 8 :
keyInput = KeyEvent.VK_I;
break;
case 9 :
keyInput = KeyEvent.VK_J;
break;
case 10 :
keyInput = KeyEvent.VK_L;
break;
case 11 :
keyInput = KeyEvent.VK_M;
break;
case 12 :
keyInput = KeyEvent.VK_N;
break;
case 13 :
keyInput = KeyEvent.VK_O;
break;
case 14 :
keyInput = KeyEvent.VK_P;
break;
case 15 :
keyInput = KeyEvent.VK_Q;
break;
case 16 :
keyInput = KeyEvent.VK_R;
break;
case 17 :
keyInput = KeyEvent.VK_S;
break;
case 18 :
keyInput = KeyEvent.VK_T;
break;
case 19 :
keyInput = KeyEvent.VK_U;
break;
case 20 :
keyInput = KeyEvent.VK_V;
break;
case 21 :
keyInput = KeyEvent.VK_X;
break;
case 22 :
keyInput = KeyEvent.VK_Z;
break;
default :
keyInput = KeyEvent.VK_ENTER;
}
return keyInput;
}
public static void main(String[] args) throws AWTException, IOException {
// TODO Apêndice de método gerado automaticamente
try {
int keyEvt;
Robot robot = new Robot();
String msg = "testando";
Strings teste = new Strings();
Runtime.getRuntime().exec("notepad.exe");
robot.delay(1000);
for(int i = 0; i >< msg.length(); i++)
{
keyEvt = teste.getKeyEvt(msg.charAt(i));
robot.keyPress(keyEvt);
robot.keyRelease(keyEvt);
robot.delay(200);
}
} catch (AWTException e) {
// TODO Bloco catch gerado automaticamente
e.printStackTrace();
}
}
}
Qualquer coisa retorna ai valeu
[]'s