Tag: key events

使用空格键触发JButton,或输入键或鼠标单击

我正在尝试使用单个按钮获取一个简单的JFrame,以便在发生任何这些事件时触发事件: 按下Enter键并且JButton具有焦点 按下空格键并且JButton具有焦点 单击JButton。 在JButton上使用addActionListener看来,Enter和空格键似乎是“免费”和默认鼠标点击。 麻烦的是,我已经读过,键绑定取决于所使用的外观。 我试图通过将Enter和空格键添加到JButton的动作映射来获得跨LaF的通用行为,甚至添加了一个随机键(“m”)以确保ActionMap正在完成工作(它是),但现在是鼠标点击丢失。 我似乎能够获得所有键和鼠标单击的唯一方法是使用动作映射和addActionListener。 有没有办法让这些键和鼠标绑定在所有LaF中一致地工作,而不试图检测可能出现的每个可能的LaF? 我可以注册一个动作侦听器,它将触发键和鼠标事件吗? 我最喜欢的解决方案是在JButton动作图中添加鼠标点击,并检测动作内部发生的键或鼠标点击。 我还在这里学习绳索,所以这可能不是最好或最有效的做事方式; 我确信它过度设计了。 这是一种训练练习,我正在试验我能掌握的一切。 欢迎任何和所有编码风格的评论! import java.awt.EventQueue; import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; import javax.swing.AbstractAction; import javax.swing.Action; import javax.swing.InputMap; import javax.swing.JButton; import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.KeyStroke; import javax.swing.UIManager; public class Example extends JFrame { // ============================ private class BtnListener extends AbstractAction { private static […]

在JTextField java中使用ENTER键

我在Java Swing表单中使用了两个JTextField 。 现在我在JTextField1输入值。 接下来如果我按ENTER键意味着光标移动到JTextField2 。 这个怎么做?

未聚焦组件中的KeyPressed和mousePressed事件

有哪些方法可以检测关键笔划而无需关注事件实施的组件? 这是我的想法: 即使没有关注myComponent ,在按下某个键时,该动作也应该参与其中。 ** mousePressed事件的相同问题。 即使未单击组件,也会检测到鼠标单击。** myComponent.addKeyListener( new KeyAdapter() { @Override public void keyPressed( KeyEvent e ){ // My action here } }); 在回答Question1 ,即使应用程序在后台运行,它也可以完成吗? 假设我有一个浏览器,每次单击或按键时,都会执行给定的操作。 我也接受建议作为答案阅读。 如果您的答案与KeyBinding相关,请详细说明。 所有答案和评论将不胜感激。 我在这里使用了JNativeHooks 示例 ,它的工作原理非常好。 只有Java的任何其他方法?

从JTextArea获取密钥

我只想做,如果我在JtextArea.automatically’}’中按'{‘这个键,那么这也将是打印的。 if(evt.KEY_PRESSED == ‘{‘) System.out.print(“}”); 这没关系吗?