黑马程序员技术交流社区

标题: 聊天程序实现Ctrl+Enter发送消息 [打印本页]

作者: theape    时间: 2016-8-13 13:44
标题: 聊天程序实现Ctrl+Enter发送消息
本帖最后由 theape 于 2016-8-13 13:46 编辑

java讲到网络编程,老师个讲了个聊天小程序Chat,发送消息都是通过按钮来完成的,可不可以添加个快捷键监听实现Ctrl+Enter发送。开始发代码
[Java] 纯文本查看 复制代码

sendText.addKeyListener(new KeyListener() {
                        @Override
                        public void keyTyped(KeyEvent e) {
                                // 这个用不到,不用管
                        }

                        @Override
                        public void keyPressed(KeyEvent e) {    //按键按下事件的方法
                                // TODO Auto-generated method stub
                                if (e.isControlDown() && e.getKeyCode() == KeyEvent.VK_ENTER) {
// 如果按下了Ctrl键盘 并且 按下了Enter键(键码是KeyEvent.VK_ENTER=13)
                                        sendText.setEditable(false);    //此时不能让sendText接收输入的任何字符,否则Enter释放时会多出空行
                                        try {
                                                send(); //这是发送消息的方法,此处省略
                                        }catch(Exception ex) {
                                                ex.getStackTrace();
                                        }
                                }
                        }

                        @Override
                        public void keyReleased(KeyEvent e) {    //按键释放事件的方法
                                // TODO Auto-generated method stub
                                if (e.isControlDown() && e.getKeyCode() == KeyEvent.VK_ENTER) {
                                        sendText.setEditable(true);    // Enter释放以后再允许sendText接收输入字符
//                                        sendText.setText("");                //清空输入框,send()方法已有,此处忽略
                                       
                                }
                        }
                        
                });


作者: theape    时间: 2016-8-13 19:06
sendText.addKeyListener(KeyListener i);
// new KeyListener 必须重写所有方法// new KeyAdapter  不必重写所有方法


public interface KeyListener extends EventListener
public abstract class KeyAdapter extends Object implements KeyListener
是否必须重写所有方法,这个不太懂,谁能给解释一下。

作者: qbh1213    时间: 2016-8-17 22:54
今天刚学习网编,表示还没研究明白
作者: luliang    时间: 2016-8-17 23:06
还是不懂




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2