我正在使用套接字为 java 创建一个聊天。我的问题是,当我第一次按 Enter 键时,在用户的框架上,插入符号转到下一行,之后的所有内容我都必须按退格键,否则我写的句子会发送一个空白句子。我使用 KeyListener 来按下回车键,并在 keyPressed 函数中输入了以下代码。
if(arg0.getKeyCode()==10)
{
System.out.println("Bika sto enter\n");
String toserver = ClientText.text2.getText();
try {
if(toserver.equals("close it")) {
ClientText.clientSocket.close();
}
ClientText.text2.moveCaretPosition(ClientText.text2.getSelectionStart());
ClientText.text2.setCaretPosition(0);
ClientText.text2.setText("");
ClientText.outToServer.writeBytes(toserver+'\n');
//ClientText.outToServer.writeUTF(toserver+'\n');
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
问题是这仅在我第一次使用聊天后才有效。例如,我发送了一些东西,如果我按 Enter,插入符号会转到下一行。然后,如果我写一些东西并按回车,插入符号会转到第二行的开头!因此,每次对此有任何帮助时,我都必须删除第一行空的行?谢谢