今天给各位分享java键盘长按事件的知识,其中也会对java监听键盘enter键进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、java程序设计用代码怎样编写一个“键盘事件”?2、用JAVA编写一个键盘连按程序。3、编写java键盘事件的程序4、JAVA 键盘事件触发问题5、java keypressed长按的时候 会有一小段的延迟6、Java 程序实现鼠标点击 键盘等事件
java程序设计用代码怎样编写一个“键盘事件”?
创建一个关于键盘事件的程序。该程序实现了当用户按下键盘时,程序中的一个面板中将显示用户的键盘输入。为了实现对键盘事件进行处理,容器类必须实现接口KeyListener.该接口定义了3个方法KeyPressed(KeyEvebt e)、KeyReleased(Key-Event e)、KeyTyped(KeyEvent e)。其中,当按下一个键时,调用KeyTyped方法;释放一个键时,调用KeyReleased方法;如果一个字符键被按下,那么会调用KeyTyped方法。因此,当按下一个键时,通常会产生两到三个事件。实验KeyType方法,以显示用户输入的字符。(1)创建一个名为KeyEventDemo的java文件。(2)在该文件中创建KeyEventDemo类,该类继承了JFrame,并实现KeyListener接口。(3)在KeyEventDemo类中实现在KeyPressed、KeyReleased和KeyType方法。(4)在KeyEventDemo类中添加String类型变量。该变量用于保存用户输入的字符。(5)在KeyType方法中调用KeyEvent的getKeyChar()方法,获取用户输入的字符,并保存到String类型变量中。最后调用repaint方法更新显示用户输入的字符串。(6)为KeyEventDemo类添加paint方法,此方法负责显示用户输入的字符。(7)用户也可以在KeyPressed和KeyReleased方法中间调用getKeyCode方法,以获取特殊的按键。比如方向键和退格键。
用JAVA编写一个键盘连按程序。
这个程序输入按大小写都可以的写用shift+“a”,小写直接按a
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Print {
public static void main(String[] args) {
JFrame jFrame = new JFrame();
final JLabel jLabel = new JLabel(“字母键!”);
jFrame.setLayout(null);
jLabel.setBounds(80, 50, 500, 80);
jFrame.add(jLabel);
jFrame.setSize(200, 200);
jFrame.setLocation(200, 300);
jFrame.setVisible(true);
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jFrame.addKeyListener(new KeyAdapter() {
int n = 0;
char[] a = “ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz”.toCharArray();
public void keyPressed(KeyEvent e) {
int keyCode = e.getKeyCode();
char c = e.getKeyChar();
for (int i = 0; i 52; i++) {
if (a[i] == c)
jLabel.setText(get5(a[i]));
}
}
public String get5 (char c) {
String s = “”;
for (int i = 0; i 5; i++) {
s += String.valueOf(c);
}
return s;
}
});
}
}
编写java键盘事件的程序
import java.awt.*;
import java.awt.event.*;
public class KeyEventDemo extends Frame implements KeyListener
{
Label l1 = new Label();
Panel p = new Panel();
public void keyPressed(KeyEvent e)
{
l1.setText(“key down”);
}
public void keyTyped(KeyEvent e){}
public void keyReleased(KeyEvent e){
l1.setText(“key up”);
}
public KeyEventDemo(String title){
super(title);
p.add(l1);
add(p);
this.addKeyListener(this);
setSize(200,100);
setVisible(true);
this.requestFocus(true);
}
public static void main(String[] agrs)
{
new KeyEventDemo(“KeyEvent中的案件实例”);
}}自己运行一下。
JAVA 键盘事件触发问题
你没有API吗?下面是java API对KeyEvent的解释:getKeyChar 方法总是返回有效的 Unicode 字符或 CHAR_UNDEFINED。KEY_TYPED 事件报告字符输入:KEY_PRESSED 和 KEY_RELEASED 事件不必与字符输入关联。因此,可以保证 getKeyChar 方法的结果只对 KEY_TYPED 事件有意义。对于按下键和释放键事件,getKeyCode 方法返回该事件的 keyCode。对于键入键事件,getKeyCode 方法总是返回 VK_UNDEFINED。“按下键”和“释放键”事件 是低级别事件,依赖于平台和键盘布局。只要按下或释放键就生成这些事件,它们是发现不生成字符输入的键(如动作键、修改键等等)的惟一方式。通过 getKeyCode 方法可指出按下或释放的键,该方法返回一个虚拟键码。虚拟键码 用于报告按下了键盘上的哪个键,而不是一次或多次键击组合生成的字符(如 “A” 是由 shift + “a” 生成的)。例如,按下 Shift 键会生成 keyCode 为 VK_SHIFT 的 KEY_PRESSED 事件,而按下 ‘a’ 键将生成 keyCode 为 VK_A 的 KEY_PRESSED 事件。释放 ‘a’ 键后,会激发 keyCode 为 VK_A 的 KEY_RELEASED 事件。另外,还会生成一个 keyChar 值为 ‘A’ 的 KEY_TYPED 事件。按下和释放键盘上的键会导致(依次)生成以下键事件:KEY_PRESSEDKEY_TYPED(只在可生成有效 Unicode 字符时产生。)但在某些情况下(例如,在激活自动重复或输入方法时),该顺序可能会有所不同(并且与平台有关)。
java keypressed长按的时候 会有一小段的延迟
我猜你的意思是想按下某个按钮的时候程序就立即响应为长按的状态,你可以先设定一个boolean来作为标志(按键后生效),然后起一个新线程来循环触发你的业务逻辑。键盘长按事件也就是以一定的频率触发持续触发的keypressed事件,这样就能避免键盘从按下到识别为长按的空白区
Java 程序实现鼠标点击 键盘等事件
Java提供了两个事件侦听接口用来管理鼠标移动和键盘动作,分别是MouseMotionListener和KeyListener,可以用它们来捕捉鼠标和键盘。
1)类KeyMonitor,是一个JPanel的扩展类,用来显示捕捉到的按键信息;
2)类MouseMonitor,也是一个JPanel的扩展类,用来显示到的鼠标移动信息;
3)入口类Main,用匿名类的方式实现了真正的监听接口;
PS:Java提供的这两个侦听器都有很大的限制,鼠标监听只有在鼠标位于Java程序所在的窗口范围之内才能有效,而键盘监听限制更严格,仅当Java程序成为当前的活动窗口时才有效。单纯用Java来实现全屏幕、所有程序的鼠标和键盘活动是不可行的。
关于java键盘长按事件和java监听键盘enter键的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。