2014-02-16 71 views
1

我不知道我怎麼會做出如果聲明:作出if語句「火」的關鍵

if("up".equals(message)) 
{ 
    System.exit(0); //What I want to change 
} 

充當如果鍵被按下?

每一樣,比如說我想這個if語句來讓這個當 等於消息它將輸出就像我一個按鍵按下襬在首位是關鍵。我無法解釋得不錯,但我希望這可以幫助更多

只是爲了在未來 任何人,我用這個

try { 
    Robot robot = new Robot(); 

    // Simulate a key press 
    robot.keyPress(KeyEvent.VK_A); // press a 
    robot.keyRelease(KeyEvent.VK_A); // release a 

} catch (AWTException e) { 
    e.printStackTrace(); 
} 

由於Jdsfighter

+1

你的問題我不清楚,能否請您解釋一下? – Maroun

+0

我可以建議你翻轉,如果if(message.equals(「up」))......信任我養成這樣的習慣,如果有一天會拯救你 – Smitty

+0

@Smitty事實上。它可能會隱藏一些可能的錯誤。 – Maroun

回答

0

你想要物理按鍵嗎?

如果是這樣,該方法是如下:

try { 
    Robot robot = new Robot(); 

    // Simulate a key press 
    robot.keyPress(KeyEvent.VK_A); // press a 
    robot.keyRelease(KeyEvent.VK_A); // release a 

} catch (AWTException e) { 
    e.printStackTrace(); 
} 

編輯:修

在這種情況下,這裏有一個關於如何做一個KeyListener的一個很好的例子甲骨文。從那裏你可以使用這些信息來滿足你的需求。 Link

+0

不,我想讓if語句表現得好像是一個真正的按鍵 – Fusion

+0

這真的很有用,謝謝! – Fusion

0

你想處理輸入嗎? 要處理輸入,您需要一個KeyListener。

e.g:

import java.awt.event.KeyEvent; 
import java.awt.event.KeyListener; 

import javax.swing.JFrame; 


public class InputHandler implements KeyListener { 

@Override 
public void keyPressed(KeyEvent e) { 
    System.out.println("pressed "+e.getKeyChar()); 

} 

@Override 
public void keyReleased(KeyEvent e) { 
    System.out.println("released "+e.getKeyChar()); 

} 

@Override 
public void keyTyped(KeyEvent e) { 
    System.out.println("typed "+e.getKeyChar()); 

} 
public static void main(String[] args) { 
    JFrame jf = new JFrame(); 
    jf.addKeyListener(new InputHandler()); 
    jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    jf.setVisible(true); 
} 

} 
0

您的上下文是不是真的清楚,但我想你找的KeyListener的實現。檢查附加的工作示例,看看它是否有幫助。

import java.awt.event.KeyEvent; 

import java.awt.event.KeyListener; import javax.swing.JFrame;

公共類KeyListenerExample實現KeyListener的{

public static void main(String[] args) throws InterruptedException { 
    new KeyListenerExample().createFrame(); 
} 

private void createFrame(){ 
    JFrame jFrame = new JFrame(); 
    jFrame.setSize(200, 300); 
    jFrame.addKeyListener(this); 
    jFrame.setVisible(true); 
} 
public void keyPressed(KeyEvent e) { 
    if (e.getKeyCode() == KeyEvent.VK_UP) 
    { 
     System.out.println("UP arrow key pressed. Going to exit."); 
     System.exit(0); //What I want to change 
    }else{ 
     System.out.println("Some key pressed"); 
    }  
} 
public void keyTyped(KeyEvent e) { 
} 
public void keyReleased(KeyEvent e) {  
} 

}