「java键盘控制」java键盘控制小球

博主:adminadmin 2023-01-22 20:33:11 329

本篇文章给大家谈谈java键盘控制,以及java键盘控制小球对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java画出一个小圆,并能用键盘控制方向的代码

import java.awt.*;

import java.awt.event.*;

import java.awt.geom.Ellipse2D;

import javax.swing.*;

public class DrawCircle extends JFrame{

Ellipse2D circle;

public DrawCircle(){

super("Moving Circle");

circle = new Ellipse2D.Double(200,200,100,100);

this.addKeyListener(new myKeyListener(this));

this.setSize(500,500);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

public void paint(Graphics g){

Graphics2D g2 = (Graphics2D) g;

g2.setColor(Color.white);

g2.fillRect(0,0,this.getWidth(),this.getHeight());

g2.setColor(Color.blue);

g2.fill(circle);

}

public static void main(String args[]){

DrawCircle d = new DrawCircle();

}

class myKeyListener extends KeyAdapter{

JFrame frame;

public myKeyListener(JFrame frame){

this.frame = frame;

}

public void keyPressed(KeyEvent e){

switch(e.getKeyCode()){

case KeyEvent.VK_UP:

circle.setFrame(circle.getX(),circle.getY()-10,circle.getHeight(),circle.getWidth());

break;

case KeyEvent.VK_DOWN:

circle.setFrame(circle.getX(),circle.getY()+10,circle.getHeight(),circle.getWidth());

break;

case KeyEvent.VK_LEFT:

circle.setFrame(circle.getX()-10,circle.getY(),circle.getHeight(),circle.getWidth());

break;

case KeyEvent.VK_RIGHT:

circle.setFrame(circle.getX()+10,circle.getY(),circle.getHeight(),circle.getWidth());

break;

}

frame.repaint();

}

}

}

辛辛苦苦给你做的... 不是复制的哈...

Java控制台中如何直接响应键盘操作?

import java.awt.event.*;

Class KeyBoard implements KeyListener{

Component comp; //定义一个键盘类的句柄

public static void main(String args[]){

KeyBoard kb=new KeyBoard();

kb.AddListener();

}

public void AddListener(){

comp=new Component(); //用这个句柄指向一个键盘类的对象

comp.addKeyListener(this);//将本身这个类添加为对键盘的监听器

}

public void keyTyped(KeyEvent e){ //这个方法是从接口里继承的

//实现你需要的按钮和相应的输出值

//具体方法请查阅KeyEvent类的API

}

}

最后说明下,这里将类本身作为了键盘的监听器,事实上,你可以将任何类作为事件源的监听器,只要继承相应的接口,并实现响应事件的函数即可,相关内容请查阅和事件有关的API。

如何在java中调用键盘命令

RunTime.exec("这里是命令");

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

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

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

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

4、Runtime.addShutdownHook()方法可以注册一个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是否被执行。

JAVA robot类控制键盘的问题

楼主你好,我没用过robot类,我也不知到ctrl+alt+delete为什么不能调出任务管理器,但楼主可用下列代码代替 :

package test;

import java.awt.AWTException;

import java.awt.Robot;

import java.awt.event.KeyEvent;

public class TestRobot {

public static void main(String[] args) throws AWTException {

Robot robot = new Robot();

robot.keyPress(KeyEvent.VK_CONTROL);

robot.keyPress(KeyEvent.VK_SHIFT);

robot.keyPress(KeyEvent.VK_ESCAPE);

robot.keyRelease(KeyEvent.VK_ESCAPE);

robot.keyRelease(KeyEvent.VK_SHIFT);

robot.keyRelease(KeyEvent.VK_CONTROL);

}

}

关于java键盘控制和java键盘控制小球的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。