在此感谢Java狂神说!!
一、画笔paint
public void paint(Graphics g){
g.setColor(Color.cyan);
g.fillOval(100, 100, 100, 100);
g.drawOval(300, 300, 100, 100);
g.setColor(Color.YELLOW);
g.fillRect(400, 400, 300, 300);
g.setColor(Color.black);
}
二、窗口监听
class MyWindowListener extends WindowAdapter{
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
@Override
public void windowActivated(WindowEvent e) {
System.out.println("窗口被激活");
}
}
三、键盘监听
class MyActionLisner extends KeyAdapter{
public void keyPressed(KeyEvent e) {
System.out.println(e.getKeyCode());
if( e.getKeyCode() == KeyEvent.VK_UP){
System.out.println("你按下了上键");
}
}
}
四、整合起来
package GUI;
import java.awt.*;
import java.awt.event.*;
public class TestDemo {
public static void main(String[] args) {
new MyFrame3();
}
}
class MyFrame3 extends Frame{
public MyFrame3(){
setBounds(300,300,400,400);
setVisible(true);
addWindowListener(new MyWindowListener());
addKeyListener(new MyActionLisner());
}
public void paint(Graphics g){
g.setColor(Color.cyan);
g.fillOval(100, 100, 100, 100);
g.drawOval(300, 300, 100, 100);
g.setColor(Color.YELLOW);
g.fillRect(400, 400, 300, 300);
g.setColor(Color.black);
}
}
class MyWindowListener extends WindowAdapter{
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
@Override
public void windowActivated(WindowEvent e) {
System.out.println("窗口被激活");
}
}
class MyActionLisner extends KeyAdapter{
public void keyPressed(KeyEvent e) {
System.out.println(e.getKeyCode());
if( e.getKeyCode() == KeyEvent.VK_UP){
System.out.println("你按下了上键");
}
}
}