2
我正在創建一個個人Java終端,我需要它來做一些我現在不太瞭解的事情。我需要的程序來聽什麼被輸入到JTextArea中,同時還知道,該方案將始終顯示如何收聽JTextArea
[USERNAME]@[OPERATING SYSTEM]:~$
「ENTER」時被擊中。而且我還需要程序來設置上述的部分,使其不可編輯,並允許在永久聲明後設置字符輸入。 如果有人能夠幫助我,我的程序在下面,那麼有監聽器的代碼,這很可能需要大量的編輯。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class testGUI extends JFrame {
boolean _active = true;
String _username = System.getProperty("user.name").toLowerCase();
String _os = System.getProperty("os.name").trim().toLowerCase();
JTextArea _commandLine = new JTextArea(_username + "@" + _os + ":~$ ");
public testGUI() {
super("Java Terminal");
setSize(800,600);
setLocation(100,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
GUISetup();
setVisible(true);
}
public void GUISetup() {
add(_commandLine);
_commandLine.addActionListener(new CommandLineListener());
}
public static void main(String[] args) {
new testGUI();
}
}
監聽器代碼如下。
try {
while(_active) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print(_username + "@" + _os + ":~$ ");
String command = br.readLine();
if(command.equals("cf")) {
new commandCreateFile();
} else if(command.equals("cof")) {
new commandCompile();
} else if(command.equals("help")) {
System.out.println("Commands");
System.out.println(" cf - Creates .java files, does not compile.");
System.out.println(" ccf - Creates .java files, compiles on creation.");
System.out.println(" help - Shows help documentation.");
} else if(command.equals("exit")) {
System.out.print("Are you sure you want to exit? (Y/N) ");
String exit = br.readLine();
if(exit.equalsIgnoreCase("y")) {
System.exit(0);
}
} else if(command.isEmpty()) {
// do nothing.
} else {
System.out.println("\"" + command + "\" does not exist. Please review the \"help\" menu");
}
}
} catch(Exception ex) {
System.out.println("There was a problem: " + ex);
}
這我不明白,通過使用JTextArea的文件,我需要附加一個適當的文件嗎? – 2012-03-04 05:22:17