今天练习了一个小的聊天程序,实现客户端与服务器端相互发送消息,仿照的例子中是点击发送button实现发送消息,我忽然想到了QQ中常设的Ctrl+Enter组合键发送消息,快捷又方便,就试着改了下,原来java自身就有几乎对应的方法,于是往消息输入框添加按键监听,很容易地就实现了该功能,哈哈,舒服。。。。。。关键设置如下
/** * 初始化消息输入框 * * @return javax.swing.JTextArea */ private JTextArea getInputArea() { if (inputArea == null) { inputArea = new JTextArea(); // 对inputArea添加按键监听,当指定键按下触发 inputArea.addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent arg0) { // 关键设置,当Ctrl+Enter组合键按下时响应 if ((arg0.getKeyCode() == KeyEvent.VK_ENTER) && (arg0.isControlDown())) { // 调用消息发送方法,将发信者信息发出 messageManager.sendMessage(userName, inputArea .getText()); // 消息发送完毕,将输入域置空 inputArea.setText(""); } } }); } return inputArea; }