2011-09-30 59 views
3

如何實現按ANY鍵以繼續使用Java。在C中我使用getch()並且它工作正常,但是我必須在每個OutputStream類中的每個讀取方法實現中按下回車鍵。閱讀任何密鑰繼續Java

在此先感謝。

+3

這裏已經提到http://stackoverflow.com/questions/1066318/how-to-read-a-single-char-from-th e-console-in-java-as-the-user-type-it –

+1

是這個控制檯還是桌面應用程序? – Kris

+0

我看到了這個問題,但我想知道如何在沒有JNI的情況下做到這一點?這是一個控制檯應用程序。 –

回答

0

這是我發現的唯一途徑是蒙山JNI和C

0

我發現了一個代碼,相當於函數C中的「_getch()

我給的答案這個問題Equivalent function to C's "_getch()" in Java?看到我的答案在這裏

或使用代碼

public static void getCh() {
final JFrame frame = new JFrame();
synchronized (frame) {
frame.setUndecorated(true);
frame.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);
frame.addKeyListener(new KeyListener() {
public void keyPressed(KeyEvent e) {
synchronized (frame) {
frame.setVisible(false);
frame.dispose();
frame.notify();
}
}

public void keyReleased(KeyEvent e) { } public void keyTyped(KeyEvent e) { } }); frame.setVisible(true); try { frame.wait(); } catch (InterruptedException e1) { } } }