awt
public class MouseTest extends Frame{
    private static final long serialVersionUID = 5437685336595276319L;
    List<Point> list = new ArrayList<Point>();
    public void addPoint(Point p){
        list.add(p);
    }
    /**
     * 重写画笔
     */
    @Override
    public void paint(Graphics g) {
        Color c = g.getColor();
        for (Point point : list) {
            g.setColor(Color.white);
            g.fillOval(point.x, point.y, 10, 10);
        }
        g.setColor(c);
    }
    public static void main(String[] args) {
        final MouseTest f = new MouseTest();
        f.setBackground(Color.black);
        f.setLayout(null);
        f.setBounds(600, 100, 300, 300);
        f.setVisible(true);
        //窗口添加鼠标点击事件
        f.addMouseListener(new MouseAdapter() {
            @Override
            public void mousePressed(MouseEvent e) {
                MouseTest f = (MouseTest) e.getSource();
                f.addPoint(new Point(e.getX(), e.getY()));
                //frame重画
                f.repaint();
                System.out.println("鼠标点击");
            }
        });
        f.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                MouseTest f2 = (MouseTest) e.getSource();
                f2.setVisible(false);
                //f.setVisible(false);
                //0正常退出,-1非正常退出
                System.exit(0);
            }
        });
    }
}
public class FrameTest extends Frame{
    @Override
    public void paint(Graphics g) {
        Color c = g.getColor();
        g.setColor(Color.green);
        g.drawLine(100, 100, 200, 200);
        g.setColor(c);
        //super.paint(g);
    }
    public void createFrame(String title,int x,int y,int w,int h){
        this.setTitle(title);
        this.setLayout(null);
        //this.setLayout(new FlowLayout(FlowLayout.CENTER,20,20));
        //new BorderLayout();
        //BorderLayout.CENTER;
        //new GridLayout(3, 2);3行两列
        this.setBounds(x, y, w, h);
        this.setBackground(Color.blue);
        Panel panel = new Panel();
        panel.setBounds(w/4, h/4, w/2, h/2);
        panel.setBackground(Color.yellow);
        this.add(panel);
        //this.add(panel, BorderLayout.NORTH);
        this.setVisible(true);
    }
    public static void main(String[] args) {
        FrameTest frameTest = new FrameTest();
        frameTest.createFrame("测试", 600, 400, 600, 600);
        /*Frame frame = new FrameTest();
        //frame.setLayout(null);
        frame.setBounds(200, 200, 300, 300);
        Button b = new Button("denglu");
        b.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                System.out.println("点击登陆");
            }
        });
        frame.add(b);
        TextField field = new TextField();
        field.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                TextField tf = (TextField) e.getSource();
                System.out.println(tf.getText());
                tf.setText("");
            }
        });
        field.setEchoChar('*');
        frame.add(field);
        //frame.pack();
        frame.setVisible(true);*/
    }
}
键盘
import java.awt.Frame;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; public class KeyTest extends Frame{ public static void main(String[] args) { KeyTest k = new KeyTest(); k.setLayout(null);
k.setBounds(600, 100, 300, 300);
k.setVisible(true);
//键盘按下事件
k.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
//System.out.println("键盘按下-->"+e.getKeyCode());
//w s a d 上下左右
switch (e.getKeyCode()) {
case 87:
System.out.println("上");
break;
case 83:
System.out.println("下");
break;
case 65:
System.out.println("左");
break;
case 68:
System.out.println("右");
break;
default:
break;
} }
}); k.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
KeyTest k2 = (KeyTest) e.getSource();
k2.setVisible(false);
System.exit(0);
}
});
} }
awt的更多相关文章
- AWT编程学习01(未完成)
		
本文资料来源:<java疯狂讲义> 作者:李刚 终于要学习这一部分了~~虽然很多人(明明是绝大多数的人)说学这个没有用...而且有点过时了...但我觉得很有意思啊...感兴趣就学~~反正多 ...
 - AWT事件处理
		
AWT事件处理基本概念 AWT事件处理过程中,主要涉及3类对象: ① Event(事件):用户对组件的一个操作,称之为一个事件,以类的形式出现,例如,键盘操作对应的事件类是KeyEvent.其实例 ...
 - AWT布局管理器
		
布局管理器 容器内可以存放各种组件,而组件的位置和大小是由容器内的布局管理器来决定的.在AWT中为我们提供了以下5种布局管理器: ① FlowLayout 流式布局管理器 ② BorderLa ...
 - Java基础---AWT
		
流式布局FlowLayout package net.zyz; import java.awt.Button; import java.awt.FlowLayout; import java.awt. ...
 - 用户图形界面(GUI)学习笔记(一)——Swing与AWT
		
一.Swing与AWT 对象窗口工具箱(Abstact Window Toolkit,AWT),是JAVA1.0刚出现的时候,包含的一个GUI设计类库.它将处理用户界面元素的任务委派给每个目标平台(W ...
 - Atitit.java图片图像处理attilax总结  BufferedImage extends java.awt.Image获取图像像素点image.getRGB(i, lineIndex); 图片剪辑/AtiPlatf_cms/src/com/attilax/img/imgx.javacutImage图片处理titit 判断判断一张图片是否包含另一张小图片 atitit 图片去噪算法的原理与
		
Atitit.java图片图像处理attilax总结 BufferedImage extends java.awt.Image 获取图像像素点 image.getRGB(i, lineIndex); ...
 - tomcat 启动参数  Xms, Xmx, XX:MaxNewSize, XX:PermSize, -XX:MaxPermSize, Djava.awt.headless
		
在 tomcat/bin/catalina.sh 的 第一行#!/bin/sh 下添加 JAVA_OPTS="-server -Xms512m -Xmx1024m -XX:MaxNewSiz ...
 - java.awt.Robot
		
import java.awt.AWTException; import java.awt.Robot; import java.awt.event.KeyEvent; public class Te ...
 - java:提示Could not initialize class sun.awt.X11GraphicsEnvironment
		
前几天发现tomcat提示 Could not initialize class sun.awt.X11GraphicsEnvironment 问题.以为不验证,就没太关注,今天发现,有同事提示了个 ...
 - paip.提升效率--gui 的选择--swing最佳实践swt awt
		
paip.提升效率--gui 的选择--swing最佳实践swt awt ////////////////弹出消息框. ////////////////myeclipse swing 开发最佳实践.. ...
 
随机推荐
- NOIP2010提高组 机器翻译
			
OJ提交地址:https://www.luogu.org/problemnew/show/P1540 http://noi.openjudge.cn/ch0112/07/ 总时间限制: 1000ms ...
 - 微信小程序 this.setData is not a function
			
在一般的函数中: bindFaChange1: function (e) { console.log('picker发送选择改变,携带值为', e.detail.value) this.setData ...
 - 20.翻译系列:Code-First中的数据库迁移技术【EF 6 Code-First系列】
			
原文链接:https://www.entityframeworktutorial.net/code-first/migration-in-code-first.aspx EF 6 Code-First ...
 - Openwrt 刷机后配置WAN口,安装luci和设置中文、安装挂载USB存储。
			
官方版本的ROM编译时时没有把luci和uhttpd打包进去的,所以,要ssh登录到路由器后手动安装,默认用户名root,密码是空. 如果你的路由器是挂载在其他路由下面的,DHCP可以获取到IP,能正 ...
 - 亚马逊免费EC2搭建OpenVPN
			
系统选择Ubuntu 16.04.5 LTS 1.下载OpenVPN AS 2.1.4 64位版本 sudo wget http://swupdate.openvpn.org/as/openvpn-a ...
 - Python中_,__,__xx__的区别
			
_xx 单下划线开头 Python中没有真正的私有属性或方法,可以在你想声明为私有的方法和属性前加上单下划线,以提示该属性和方法不应在外部调用.如果真的调用了也不会出错,但不符合规范. #! /usr ...
 - easyui中combobox 取值
			
<input id="cmbstrTrainType" class="easyui-combobox" name="cmbstrTrainTyp ...
 - java 查看SOAP请求报文
			
log.info("ESB 请求URL = " + cachedEndpoint.toString());//打印SOAP请求报文 add by LinJC on 20170120 ...
 - AICODER全栈实习报名
			
三期班开始报名 三期班定于6月17日开班,实习费用如下: 三个月模式实习费为12000元. 一个月模式实习费为4500元. AICODER提供后付费模式,报名参加AICODER的线下实习3个月模式的朋 ...
 - iOS最新Mac OS X 10.11之后 安装cocoapods及使用详解
			
iOS 最新版 CocoaPods 的安装流程 一.安装方法: 1.移除现有Ruby默认源 gem sources --remove https://rubygems.org/ 为了提高安装的成功几率 ...