当前位置: 首页 > 面试题库 >

停止Swing中事件的默认行为

佴保臣
2023-03-14
问题内容

在通过单击发送按钮或在一段代码的消息文本字段中按Enter的方法中,我有以下代码。

// In class ChatWindow
private void messageTextAreaKeyPressed(java.awt.event.KeyEvent evt) { // Event handler created by Netbeans GUI designer to call this method.           
    if(evt.getKeyCode() == java.awt.event.KeyEvent.VK_ENTER) {
        sendMessage();
    }
}   
public void sendMessage() {
    String currentMessage = messageTextArea.getText();
    addMessage("You", currentMessage);
    app.sendMessage(currentMessage, 1);
    messageTextArea.setText("");
}

最后的代码使文本区域空白。但是,通过按Enter键发送消息后,文本框将包含换行符,而不是为空。

我的猜测是,在事件处理程序运行之后,然后添加了换行符。如何停止添加换行符?


问题答案:

evt.consume()致电后尝试添加sendMessage()

private void messageTextAreaKeyPressed(java.awt.event.KeyEvent evt) { 
 if(evt.getKeyCode() == java.awt.event.KeyEvent.VK_ENTER) {
    sendMessage();
    evt.consume();
 }
}


 类似资料:
  • 本文向大家介绍在React中怎么阻止事件的默认行为?相关面试题,主要包含被问及在React中怎么阻止事件的默认行为?时的应答技巧和注意事项,需要的朋友参考一下 event.preventDefault();阻止浏览器默认行为, 例如标签不跳转 event.stopPropagation();阻止冒泡; 例如上级点击事件不生效

  • 本文向大家介绍js阻止冒泡和默认事件(默认行为)详解,包括了js阻止冒泡和默认事件(默认行为)详解的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了js阻止冒泡和默认事件方法,供大家参考,具体内容如下 阻止冒泡。冒泡简单的举例来说,儿子知道了一个秘密消息,它告诉了爸爸,爸爸知道了又告诉了爷爷,一级级传递从而引起事件的混乱,而阻止冒泡就是不让儿子告诉爸爸,爸爸自然不会告诉爷爷了。下面的d

  • 问题内容: 因此,我遇到的问题似乎是仅在Linux上发生的错误。我正在尝试在按下某个键时记录我的swing应用程序,然后检测该键何时被释放。现在不应该有问题,因为KeyListener应该可以为我处理这个问题。 问题是,当我按下键时,会得到很多重复的keyPressed()/ keyReleased()事件,而不仅仅是单个keypressed()事件。有谁知道在Linux上何时真正发布密钥的解决方

  • 我有一个父pom,它为我的其他组件提供所需的版本号变量 您必须使用分类器将补充工件附加到项目中,而不是替换它们 我发现这是因为jar打包固有的maven jar插件默认绑定,但我正在进行war打包,所以在war打包之后,默认jar执行开始并抛出上面的一个。任何停止违约的解决方案都将帮助我提前感谢。

  • 我是新来的Spring。当我运行一个Spring批处理应用程序时,我希望只看到“Hello World!”,但相反,我得到了以下附加细节-

  • 问题内容: 我过去曾使用过取消click事件的方法,但是在弄清楚为什么它在这种情况下不起作用的问题上,我遇到了麻烦。我将所有标签分配到具有类名的列中,然后使用来获取对它们的引用,然后为每个标签添加一个click事件,该事件从服务器获取值,如果未达到验证条件,则应阻止默认操作并提供用户消息。 问题答案: 它不起作用,因为响应是异步的。e.preventDefault()仅在ajax调用从服务器获得响