Hieno esimerkki paljon apua=)
Mutta tietääkö joku saako odotettua niin kauan, että jokin toiminto suoritetaan loppuu esim excel makro ennen kuin jatketaa näppäin yhdistelmien syöttämistä? ps. makron suoritus saattaa kestää ennalta määräämättömän ajan. =S
En ole Javaa aikoihin vääntänyt, vaan muistan tämmoisen ongelman nähneeni jollain ja ratkaisu oli jokin seuraavista.
http://java.sun.com/j2se/1.5.0/docs/api/java/
waitForIdle(), wait(), notify().
En kyllä valitettavasti osaa olla paremmin avuksi ennenkuin heitän taas Javan tulille ja testailen :E.
eli tässä pieni esimerkki.
//Avataan excel tiedosto try{ Runtime.getRuntime().exec("excel C:\\exceltiedosto.xls"); }catch(Exception e){} //alt pohjaan robot.keyPress(KeyEvent.VK_ALT); //Otetaan makro käyttöön "alt o" painamalla robot.keyPress(KeyEvent.VK_O); //TÄSSÄ VÄLISSÄ PITÄISI ODOTELLA, ETTÄ MAKRO EHTII HAKEMAAN TIEDOT KANNASTA JA PÄIVITTÄÄ EXCEL TAULUKON ps.excel hakee verkon yli tiedot //joten saattaa hetki pyörähtää jos verkossa joku tökkii. robot.setAutoWaitForIdle(true); // tekeekö tämä sen?? //jatketaan pikanäppäimien painelemista kun tiedot ovat päivittyneet exceliin //Tiedosto valikko auki alt t robot.keyPress(KeyEvent.VK_T); robot.delay(500); //Lopeta alt p robot.keyPress(KeyEvent.VK_P ); robot.delay(500); //Tallennetaanko muutokset alt k robot.keyPress(KeyEvent.VK_K); //vapautetaan alt näppäin robot.keyRelease(KeyEvent.VK_ALT);
Eli pitäis käytännössä saada ohjelma odottamaan niin pitkään kun kantahaku kestää tai saada kantahausta joku palaute exceliltä kun se on suoritettu.
Aihe on jo aika vanha, joten et voi enää vastata siihen.