private void btnSendActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));
String fromServer;
String fromUser;
try{
while ((fromServer = in.readLine()) != null) {
txtField.setText("Server: " + fromServer +"\n");
if (fromServer.equals("hehe bye"))
break;
fromUser = stdIn.readLine();
if (fromUser != null) {
txtField.setText("Client: " + fromUser +"\n");
out.println(fromUser);
}
}
out.close();
in.close();
stdIn.close();
nisSocket.close();
} catch(Exception e){
//
}
}
public static void main(String args[]) {
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Gui_java().setVisible(true);
}
});
try {
nisSocket = new Socket("localhost", 8888);
out = new PrintWriter(nisSocket.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(nisSocket.getInputStream()));
} catch (UnknownHostException e) {
System.err.println("Don't know about host: localhost.");
System.exit(1);
} catch (IOException e) {
System.err.println("Couldn't get I/O for the connection to: localhost.");
System.exit(1);
}
}
// Variables declaration - do not modify
private javax.swing.JButton btnSend;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextArea txtArea;
private javax.swing.JTextField txtField;
// End of variables declaration
}
Когда я запускаю код GUI, он зависает.Я пытался изменить многое, но это не сработало.План состоял в том, чтобы сделать текстовое поле для отправки сообщения и отображения в текстовой области, а затем в текстовой области будет показано, что отвечает сервер.У сервера есть свой собственный ответ, поэтому я сделал графический интерфейс только для Клиента.
Я часами пытался найти решение, но я не совсем понимаю, из-за низкого уровня знаний, извините.
отредактировано:
/**
* Creates new form Gui_java
*/
static Socket nisSocket = null;
static PrintWriter out = null;
static BufferedReader in = null;
они объявлены в начале, у меня есть 3 класса: клиент (графический интерфейс пользователя), протокол, сервер.Я не хочу публиковать все, потому что это может быть слишком долго.