第二章
2015-07-13 21:05
399 查看
package huatu;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
public class DrawListener implements MouseListener{
public int x1;
public int y1;
public int x2;
public int y2;
public Graphics g1;
public void getGraphic(Graphics gra){
g1 = gra;
}
/**
* 鼠标按下的时候触发
*/
public void mousePressed(MouseEvent e){
//定位鼠标按下的坐标
x1 = e.getX();
y1 = e.getY();
}
/**
* 鼠标释放的时候触发
*/
public void mouseReleased(MouseEvent e){
//定位鼠标释放的坐标
x2 = e.getX();
y2 = e.getY();
//根据两点坐标绘制图形:需要一只笔(画笔)
g1.drawLine(x1, y1, x2, y2);
}
/**
* 鼠标进入的时候触发
*/
public void mouseEntered(MouseEvent e){
}
/**
* 鼠标退出的时候触发
*/
public void mouseExited(MouseEvent e){
}
/**
* 鼠标点击的时候,触发
* 按下和释放在同一个位置,并释放鼠标的时候执行
*/
public void mouseClicked(MouseEvent e){
}
}
package huatu;
import java.awt.*;
import javax.swing.*;
public class drawFrame {
public static void main(String[] args) {
drawFrame df = new drawFrame();
df.initFrame();
}
public void initFrame(){
JFrame jf=new JFrame();
//创建一个窗体
//设置窗体大小
jf.setSize(600, 600);
jf.setDefaultCloseOperation(3);
jf.setVisible(true);
//获取画笔,用于监听器当中绘制相应的图形//画库得到画笔
Graphics g=jf.getGraphics();
//创建监听器对象
DrawListener dl=new DrawListener();
//把画笔对象,通过监听器对象的getGraphics方法,传递到对方类中
dl.getGraphic(g);
jf.addMouseListener(dl);
}
}
逻辑关系好难搞懂啊!
1.构造函数
访问权限 类名(){}
作用:用来构造对象
特征:创建对象时候执行
构造器有返回值,返回的是对象在内存中的地址
2.方法重载
方法重载:1.在一个类中,
2.方法名相同
3.参数类型、参数个数、参数顺序不一样的方法互为重载方法
构造方法重载:如果重载了构造函数,则类中默认的构造函数没有了,如果还需要用到无参的,则必须显性定义在类中
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
public class DrawListener implements MouseListener{
public int x1;
public int y1;
public int x2;
public int y2;
public Graphics g1;
public void getGraphic(Graphics gra){
g1 = gra;
}
/**
* 鼠标按下的时候触发
*/
public void mousePressed(MouseEvent e){
//定位鼠标按下的坐标
x1 = e.getX();
y1 = e.getY();
}
/**
* 鼠标释放的时候触发
*/
public void mouseReleased(MouseEvent e){
//定位鼠标释放的坐标
x2 = e.getX();
y2 = e.getY();
//根据两点坐标绘制图形:需要一只笔(画笔)
g1.drawLine(x1, y1, x2, y2);
}
/**
* 鼠标进入的时候触发
*/
public void mouseEntered(MouseEvent e){
}
/**
* 鼠标退出的时候触发
*/
public void mouseExited(MouseEvent e){
}
/**
* 鼠标点击的时候,触发
* 按下和释放在同一个位置,并释放鼠标的时候执行
*/
public void mouseClicked(MouseEvent e){
}
}
package huatu;
import java.awt.*;
import javax.swing.*;
public class drawFrame {
public static void main(String[] args) {
drawFrame df = new drawFrame();
df.initFrame();
}
public void initFrame(){
JFrame jf=new JFrame();
//创建一个窗体
//设置窗体大小
jf.setSize(600, 600);
jf.setDefaultCloseOperation(3);
jf.setVisible(true);
//获取画笔,用于监听器当中绘制相应的图形//画库得到画笔
Graphics g=jf.getGraphics();
//创建监听器对象
DrawListener dl=new DrawListener();
//把画笔对象,通过监听器对象的getGraphics方法,传递到对方类中
dl.getGraphic(g);
jf.addMouseListener(dl);
}
}
逻辑关系好难搞懂啊!
1.构造函数
访问权限 类名(){}
作用:用来构造对象
特征:创建对象时候执行
构造器有返回值,返回的是对象在内存中的地址
2.方法重载
方法重载:1.在一个类中,
2.方法名相同
3.参数类型、参数个数、参数顺序不一样的方法互为重载方法
构造方法重载:如果重载了构造函数,则类中默认的构造函数没有了,如果还需要用到无参的,则必须显性定义在类中
相关文章推荐
- 【三】继承+构造器
- ros系列笔记
- 入侵某邮网络例子
- Python-装饰器
- HTTP长链接
- Java内部类总结 (吐血之作)
- 【转】【Android开发经验】Android相关好博客推荐--跟随大神的脚步才能成为大神--加油!
- OnClientClick和OnClick的区别
- OnClientClick和OnClick的区别
- @Autowired与@Qualifer的使用区别备忘
- 视觉直观感受7种常用排序算法
- 英文写作三套件
- Python中变量的作用域
- 思科交换机创建vlan的命令是什么??
- 操作系统中的缓冲(buffer)
- DistributedCache的使用
- 面向对象五大原则_3.依赖倒置&4.接口隔离
- xml文件读取
- sqlconnection连接方法
- java实现双向循环链表