如何在java中调用键盘命令

如何在java中调用键盘命令,第1张

RunTimeexec("这里是命令");

那就首先说点Runtime类吧,他是一个与JVM运行时环境有关的类,这个类是Singleton的。我说几个自己觉得重要的地方。

1、RuntimegetRuntime()可以取得当前JVM的运行时环境,这也是在Java中唯一一个得到运行时环境的方法

2、Runtime上其他大部分的方法都是实例方法,也就是说每次进行运行时调用时都要用到getRuntime方法。

3、Runtime中的exit方法是退出当前JVM的方法,估计也是唯一的一个吧,因为我看到System类中的exit实际上也是通过调用Runtimeexit()来退出JVM的,这里说明一下Java对Runtime返回值的一般规则(后边也提到了),0代表正常退出,非0代表异常中止,这只是Java的规则,在各个 *** 作系统中总会发生一些小的混淆。

4、RuntimeaddShutdownHook()方法可以注册一个hook在JVM执行shutdown的过程中,方法的参数只要是一个初始化过但是没有执行的Thread实例就可以。(注意,Java中的Thread都是执行过了就不值钱的哦)

5、说到addShutdownHook这个方法就要说一下JVM运行环境是在什么情况下shutdown或者abort的。文档上是这样写的,当最后一个非精灵进程退出或者收到了一个用户中断信号、用户登出、系统shutdown、Runtime的exit方法被调用时JVM会启动shutdown的过程,在这个过程开始后,他会并行启动所有登记的shutdown hook(注意是并行启动,这就需要线程安全和防止死锁)。当shutdown过程启动后,只有通过调用halt方法才能中止shutdown的过程并退出JVM。

那什么时候JVM会abort退出那?首先说明一下,abort退出时JVM就是停止运行但并不一定进行shutdown。这只有JVM在遇到SIGKILL信号或者windows中止进程的信号、本地方法发生类似于访问非法地址一类的内部错误时会出现。这种情况下并不能保证shutdown hook是否被执行。

通过Scanner实现键盘读取输入。

Scanner使用正则表达式来解析基本类型和字符串的简单文本扫描器。通过Scanner扫描Systemin的输入流,可以获取到键盘信息。

比如:

例如,以下代码使用户能够从键盘输入一个数:

     Scanner sc = new Scanner(Systemin);

     int i = scnextInt();

KeyEventVK_DOWN向下

KeyEventVK_LEFT向左

KeyEventVK_RIGHT向右

KeyEventVK_UP向上

public class OtherTest extends JFrame {

    private static final long serialVersionUID = 1L;

 

    public static void main(String[] args) {

        MyPanel mp = new MyPanel();

        OtherTest ot = new OtherTest();

        otadd(mp);

        otaddKeyListener(mp); 

        otsetSize(400, 300);

        otsetTitle("Moving XO");

        otsetLocationRelativeTo(null);

        otsetVisible(true);

    }

}

 

class MyPanel extends JPanel implements KeyListener {

    private static final long serialVersionUID = 1L;

    int x = 10;

    int y = 10;

 

    public void paint(Graphics g) {

        superpaint(g);

        gfillOval(x, y, 10, 10);

    }

 

    public void keyPressed(KeyEvent e) {

        if (egetKeyCode() == KeyEventVK_DOWN) {

            y++;

        } else if (egetKeyCode() == KeyEventVK_UP) {

            y--;

        } else if (egetKeyCode() == KeyEventVK_LEFT) {

            x--;

        } else if (egetKeyCode() == KeyEventVK_RIGHT) {

            x++;

        }

        thisrepaint();

    }

 

    public void keyTyped(KeyEvent e) {

        // TODO Auto-generated method stub

         

    }

 

    public void keyReleased(KeyEvent e) {

        // TODO Auto-generated method stub

         

    }

     

}

以上就是关于如何在java中调用键盘命令全部的内容,包括:如何在java中调用键盘命令、java中如何从键盘中读取输入信息、Java(myeclipse)中怎样获取键盘上下左右的键值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/10168030.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存