我在我的程序中有一個java menubar,它只有1個選項和2個子選項,文件 - >保存,關閉。但不是保存並關閉,我的選項是服務器和客戶端。所以對於第一選項的動作事件我有這樣的Java的動作監聽:Java Menubar Action到一個類
public class serverAction extends AbstractAction
{
public serverAction()
{
super();
}
public void actionPerformed(ActionEvent e)
{
JOptionPane.showMessageDialog(null, "Test");
}
}
所以這個工作,當我點擊文件 - >服務器上,它會彈出,上面寫着測試的窗口。現在我有一個服務器類(即我已經單獨測試,並知道它的工作原理),看起來像這樣:
public class SocketServer {
public static void main(String[] args) throws Exception {
...
}
private static class ClientListenThread extends Thread {
public ClientListenThread(Socket socket, int ClientNumber){
...
}
public void run() {
...
}
}
private static class ServerSendThread extends Thread {
public ServerSendThread(Socket socket) {
...
}
public void run() {
...
}
}
}
現在我需要調用這個SocketServer
類當我點擊我的主要程序的服務器選項,以便它可以啓動服務器代碼並等待並監聽任何客戶端連接。我的問題是,如何從serverAction
類中啓動整個SocketServer
類代碼?
所以我會從'startServer()'調用'main'函數? – Richard
@Richard不,主要是你的應用程序的入口點。你在那裏創建你的'gui',當你點擊菜單'Server'''''時,'actionPerformed'被執行並且你在那裏啓動服務器。 – nachokk
@nackhokk另外,有沒有一種簡單的方法來製作java窗口(比如拖放式的gui,它會爲我編寫代碼?),而不是我不得不花費數小時的時間試圖讓代碼中的對齊方式正確? – Richard