java培训第一天--画板
package day1;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Panel;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;
//import org.omg.CORBA.PUBLIC_MEMBER;
//继承
public class day1_test extends JPanel{
/**
*
*/
private static final long serialVersionUID = 1L;
//定义颜色
public Color colorRed = new Color(255,0,0);
public Color colorBlue = new Color(0,0,255);
public Color colorGreen = new Color(0, 255, 0);
public Color rectcolor = colorRed;
int x_axis = 0;
int y_axis = 0;
int paint_size = 0;
boolean isbegin = true;
boolean isclear = false;
//画板界面:画框 画布
public static void main(String args[])
{
//画框 声明居然和C#一样
JFrame day1_frame = new JFrame();
//变量用来指代内存中的一块空间用来存放不同的数据
day1_frame.setVisible(true);
//set size
day1_frame.setSize(1300, 720);
day1_frame.setResizable(false);
//set position
day1_frame.setLocationRelativeTo(null);
//close programe
day1_frame.setDefaultCloseOperation(2);
//画布
//JPanel day1_panel = new JPanel();
//创建自己的画布
day1_test mypanel = new day1_test();
//添加panel
//mypanel.setSize(1300, 55);
day1_frame.add(mypanel);//这里调用了paint
//在panel上面再建立panel
//方法的重写 paint
//这里调用timepaint
mypanel.TimePaint();
}
/**
* 自己定义的方法
* **/
public void paint(Graphics gr)
{
//画颜色选择区域
//画笔
//左上角x,y坐标
gr.setColor(colorRed);
gr.fillRect(0, 50, 1300,2);
gr.setColor(colorBlue);
gr.fillRect(0, 0, 1300, 2);
//第一个按钮绿色
gr.setColor(colorGreen);
gr.fillRect(0, 0, 100, 50);
gr.setColor( new Color(122,245,255));
gr.fillRect(200, 0, 100, 50);
gr.setColor(colorRed);
gr.fillRect(400, 0, 100, 50);
gr.setColor(Color.ORANGE);
gr.fillRect(600, 0, 100, 50);
gr.setColor(Color.pink);
gr.fillRect(800, 0, 100, 50);
gr.setColor(Color.orange);
gr.drawRect(1000,0 , 100, 50);
//font参数 字体 风格 字号
gr.setFont(new Font("楷体", 0, 30));
gr.drawString("clear", 1015, 35);
gr.drawRect(1200, 0, 100, 50);
gr.drawString("CLA", 1215, 35);
//画线,两个点
gr.setColor(Color.orange);
gr.drawLine(0, 55, 1300, 55);
//画线
if(!isbegin)
{
gr.setColor(rectcolor);
if(y_axis>55)
{
gr.fillRect(x_axis, y_axis, 10, 10);
}
}
//清屏的画法
if(isclear)
{
gr.setColor(getBackground());
gr.fillRect(0, 55, 1300, 665);
isclear = false;
}
}
//定义鼠标事件
public void TimePaint()
{
MouseAdapter MA = new MouseAdapter() {
//鼠标事件:定义鼠标事件的类型
@Override
//鼠标拖动事件,拖动鼠标激发
public void mouseDragged(MouseEvent e) {
/*
* 需要repaint方法
* 不断刷新鼠标的坐标赋值给方框坐标
* */
//获取鼠标位置
//基本类型 (结构简单int,共有8种:int[4],float[2],bool,char,string,)引用类型(结构复杂,比如画布。。。)
int locationx = e.getX();
int locationy = e.getY();
x_axis = locationx;
y_axis = locationy;
isbegin = false;
repaint();
}
@Override
public void mouseClicked(MouseEvent e) {
int locationx = e.getX();
int locationy = e.getY();
if(locationx>0&&locationx<100&&locationy>0&&locationy<50)
{
rectcolor = colorGreen;
}
else if (locationx>200&locationx<300&locationy>0&locationy<50) {
rectcolor = new Color(122,245,255);
}
else if(locationx>400&locationx<500&locationy>0&locationy<50)
{
rectcolor = colorRed;
}
else if(locationx>600&locationx<700&locationy>0&locationy<50)
{
rectcolor = Color.ORANGE;
}
else if(locationx>800&locationx<900&locationy>0&locationy<50)
{
rectcolor = Color.pink;
}
else if(locationx>1000&locationx<1100&locationy>0&locationy<50)
{
rectcolor = getBackground();
}
else if(locationx>1200&locationx<1300&locationy>0&locationy<50)
{
isclear = true;
//立即执行清屏
repaint();
rectcolor = colorRed;
}
}
};
addMouseMotionListener(MA);//动态监听
addMouseListener(MA);//静态监听
}
}
完全不想学java....
java培训第一天--画板的更多相关文章
- 2016.8.16 Java培训第一天
1. 十进制转换二进制 31/2=15余1 15/2=7余1 7/2=3余1 3/2=1余1 31的二进制结果为11111 35/2=17余1 17/2=8余1 8/2=4余0 4/2=2 ...
- 长沙JavaEE培训机构哪家比较靠谱?Java培训的职业前景
长沙JavaEE培训机构哪家比较靠谱?可信度高? 全球信息化的时代已经到来,IT行业越来越受大众的欢迎,所以越来越多的人把注意力集中到IT职业教育培训.在软件开发领域,Java培训已经成为人们的首选, ...
- Java小白如何一步步学好Java,听听企业Java培训师的实践经验吧
今天我准备给小主展示一篇Java培训老师的文章,希望能给Java小白一个学好Java的路径或者提示.以下就是原文: 从大学到现在,我使用Java已经将近20年,日常也带实习生,还在公司内部做train ...
- 从.Net到Java学习第一篇——开篇
以前我常说,公司用什么技术我就学什么.可是对于java,我曾经一度以为“学java是不可能的,这辈子不可能学java的.”结果,一遇到公司转java,我就不得不跑路了,于是乎,回头一看N家公司交过社保 ...
- 如何选择JAVA培训机构,兼议什么样的人适合培训机构
首先,利益相关,本人就是培训机构创办者兼讲师,但这不妨碍我对此发表看法. 我们先来看什么样的人适合培训机构?要回答这个问题,需要先换个角度.这个角度就是,你学习一门语言的动机是什么?99%的人的回答是 ...
- 动力节点Java培训告诉你Java线程的多功能用法
现在的java开发可谓是八仙过海各显神通啊!遥想当下各种编程语言萎靡不振,而我Java开发异军突起,以狂风扫落叶之态,作为Java培训行业的黄埔军校,为了守护Java之未来,特意总结了一些不被人所熟知 ...
- Java学习第一天
Java学习第一天 对于网络管理员或者黑客必须知道的八个cmd命令 详情请参考:http://www.2cto.com/os/201608/533964.html nbtstat ...
- 北京Java培训机构哪个好
又是一年暑期生活的来临,对于即将走出校园的实习生而言,培训潮与就业潮不约而至,培训行业的就业课程开班也如火如荼地进行着. 一直以来,计算机专业的毕业生都会作为一股庞大的生力军涌入社会各个岗位.就目前的 ...
- Java 学习第一步-JDK安装和Java环境变量配置
Java学习第一步——JDK安装及Java环境变量配置 [原文] 2014-05-30 9:09 Java SE 阿超 9046 views Java作为当下很主流的编程语言,学习Java的朋 ...
随机推荐
- div居中方法
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- hihoCoder 1432 : JiLi Number(吉利数)
hihoCoder #1432 : JiLi Number(吉利数) 时间限制:1000ms 单点时限:1000ms 内存限制:256MB Description - 题目描述 Driver Ji l ...
- hibernate的session对象核心方法注意的问题
1.session.save()方法 1).session.save()方法会使一个对象从临时状态转变为持久化状态. 2).session.save()方法会赋予持久化对象的OID属性一个ID值,以对 ...
- 淘宝网触屏版 - 学习笔记(1 - 关于meta)
注:本文是学习笔记,并不是教程,所以会有很多我不理解或猜测的问题,也会有不尽详实之处,望见谅. <meta charset="utf-8"> <meta cont ...
- CSUOJ_1000
/* * Title : A+B(I) * Data : 2016/11/09 * Author : Andrew */ #include <iostream> int main() { ...
- 物理Data Guard的日常维护
关闭顺序 1. 首先关闭primary数据库 [oracle@Master admin]$ sqlplus / as sysdba SQL> shutdown immediate 2. 关闭st ...
- Js 常用函数
1. 算数函数(Math) 1)Js小数取整 常用于:分页算法 js 小数取整的函 .丢弃小数部分,保留整数部分 js:parseInt(/) .向上取整,有小数就整数部分加1 js: Math.ce ...
- static修饰的静态内部类
Java里面static一般用来修饰成员变量或函数.但有一种特殊用法是用static修饰内部类,普通类是不允许声明为静态的,只有内部类才可以.被static修饰的内部类可以直接作为一个普通类来使用,而 ...
- 转:使用DBUnit测试时违反外键约束的解决办法
DBUnit是一个基于junit扩展的数据库测试框架.它提供了大量的类对与数据库相关的操作进行了抽象和封装.它会把数据库表里的数据和一个xml文件关联起来,也就是说它可以让数据在XML文件和数据库之间 ...
- VB发送后台按键和组合键
http://files.cnblogs.com/files/liuzhaoyzz/VB%E5%8F%91%E9%80%81%E5%90%8E%E5%8F%B0%E7%BB%84%E5%90%88%E ...