因此,我使用Java中的Robot類在夜間自動執行任務。我需要它在上午1:10:10完成任務,但它不適用於我的測試。我將時間與當前時間匹配,但是需要加一分鐘進行測試。它不執行任務。這裏是我的(編輯,取得了整一個布爾現在還)主代碼:在特定時間執行任務
private void startStopButtonActionPerformed(java.awt.event.ActionEvent evt) {
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss");
String time = sdf.format(cal.getTime());
System.out.println(time);
press = true;
while(press == true){
if(time.equals("09:39:10")){
System.out.println("well its time");
try {
rightClick();
TimeUnit.SECONDS.sleep(2);
click(573, 255);
TimeUnit.SECONDS.sleep(2);
click(648, 294);
TimeUnit.SECONDS.sleep(2);
keyPress();
TimeUnit.SECONDS.sleep(2);
press = false;
} catch (AWTException | InterruptedException ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE, null, ex);
}
break;
}
}
}
這裏是我的方法:
private void rightClick() throws AWTException{
Robot bot = new Robot();
bot.keyPress(KeyEvent.VK_5);
bot.delay(500);
bot.keyRelease(KeyEvent.VK_5);
bot.delay(1000);
bot.mousePress(InputEvent.BUTTON3_DOWN_MASK);
bot.delay(500);
bot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK);
}
private void click(int x, int y) throws AWTException{
Robot rob = new Robot();
rob.mouseMove(x, y);
rob.mousePress(InputEvent.BUTTON1_DOWN_MASK);
rob.delay(500);
rob.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
}
private void keyPress() throws AWTException{
Robot r = new Robot();
r.keyPress(KeyEvent.VK_T);
r.delay(500);
r.keyRelease(KeyEvent.VK_T);
r.delay(500);
}
所以,我希望任何人都可以見識一下爲什麼它不是」不要做任務。 :)
你調試過嗎?你確定你的日期字符串格式正確嗎? – Carcigenicate
上面是什麼?它在哪裏宣佈和初始化? – nullpointer
'press'是一個整數,每次按下startStop按鈕時加1。是的,我已確保我的數據字符串格式正確。 –