首页 > 编程知识 正文

java volatile,implements使用方法

时间:2023-05-03 07:42:49 阅读:107704 作者:2732

今天在写游戏,即使按下按钮听,也很难施加苦衷。

实现了接口,但是不能监听

后来我发现我只是实现了封口,没有调用它。 仔细想想,在控件面板上添加了addkey监听器(this )。

要写拦截,你需要记住让控件触发。 总之基础不牢固。 gjdwd

其次,用其他程序写测试发现方法也不行。 后来,比较起来少了一个

this.setfocusable(true;

在网上调查之后才知道有必要成为焦点。 伙伴们知道吗?

将控件设置为可获得焦点的状态。 默认情况下无法获得焦点。 如果不设置为true,则无法获取控件的单击事件

import java.awt.Color;

import java.awt.Font;

import java.awt.Graphics;

import Java.awt.event.key adapter;

import java.awt.event.KeyEvent;

import Java.awt.event.key listener;

import javax.swing.JFrame;

import javax.swing.JPanel;

publicclassmainframeextendsjframe {

privatekeyboardpanelkeyboardpanel=newkeyboardpanel (;

公共邮件(

添加(keyboard panel );

kyboardPanel.setfocusable(true );

}

publicstaticvoidmain (字符串[ ] args ) {

mainFrame frame=new mainFrame (;

frame.settitle(mainframe );

frame.setsize (300,300 );

frame.setlocationrelativeto () null;

frame.setdefaultcloseoperation (jframe.exit _ on _ close );

frame.setvisible(true;

}

staticclasskeyboardpanelextendsjpanelimplementskeylistener {

私有输入x=100;

私有输入y=100;

private char keyChar='A ';

公共密钥面板

setbackground(color.cyan;

addkey监听器(this;

/* addkey监听器(new key adapter () ) ) ) )。

公共语音密钥预定义(keyevent e ) {

sitch(e.getkeycode ) ) ) )。

case KeyEvent.VK_DOWN:

y=10;

黑;

case KeyEvent.VK_UP:

y-=10;

黑;

case KeyEvent.VK_LEFT:

x-=10;

黑;

case KeyEvent.VK_RIGHT:

x=10;

黑;

默认:

keyChar=e.getKeyChar (;

}

//repaint (;

}

); */

}

保护性组件(graphicsg ) {

super.paintcomponent(g );

g.setfont(newfont('timesRoman ',Font.PLAIN,40 ) );

g.drawstring(string.valueof ) keychar ),x,y );

}

@Override

公共语音密钥预定义(keyevent e ) {

//todo自动生成方法stub

sitch(e.getkeycode ) ) ) )。

case KeyEvent.VK_DOWN:

y=10;

黑;

case KeyEvent.VK_UP:

y-=10;

黑;

case KeyEvent.VK_LEFT:

x-=10;

黑;

case KeyEvent.VK_RIGHT:

x=10;

黑;

默认:

keyChar=e.getKeyChar (;

}

repaint (;

}

@Override

publicvoidkeyreleased (keyevent e ) {

//todo自动生成方法stub

}

@Override

Publicvoidkeytyped(keyevente ) {

//todo自动生成方法stub

}

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。