我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 一个画画的板子...据说有浮云.. 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

vito



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 2741
威望: 0
浮云: 1106
在线等级:
注册时间: 2005-10-14
最后登陆: 2009-10-16

5come5帮你背单词 [ logic /'lod3əik/ n. 逻辑(学),逻辑性 ]


一个画画的板子...据说有浮云..

一个画画的板子,有修改

ms 这里有浮云, 版主来加吧

Quote:

package org.vito.draw.temp.test;

import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

/**
* 一个可以写写画画的板子,有修改.
* @author vito
*
*/
public class Paintcha extends Applet{
    /**
     *
     */
    private static final long serialVersionUID = 4221836743513294553L;
   
    MyPanel panel;
    ShowPanel showPanel;
   
   
    public void init() {
        setLayout(new BorderLayout());
        panel = new MyPanel(); 
        panel.setForeground(Color.RED);
        showPanel = new ShowPanel(panel);              
        add("North",showPanel);
        add("Center", panel);
    }

    public void destroy() {
        remove(panel);     
    }
       
    public static void main(String args[]) {   
        Paintcha paint = new Paintcha();       
        Frame frame = new Frame("Ha ha ha ... ");       
        paint.init();       
        paint.start();            
        frame.add("Center", paint);
        frame.setSize(660, 400);       
        frame.setVisible(true);     
       
        frame.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
    }
}
package org.vito.draw.temp.test;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Panel;
import java.awt.Rectangle;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.util.Vector;

/**
* 画画面板,有修改.
* @author vito
*
*/
class MyPanel extends Panel implements MouseListener, MouseMotionListener {
    /**
     *
     */
    private static final long serialVersionUID = 9123686144551555715L;
   
    //向量储存特征
    Vector<Rectangle> lines = new Vector<Rectangle>();
    Vector<Color> colors = new Vector<Color>();
   
    //位置
    int x1,y1;
    int x2,y2;
   
    public MyPanel() {
        setBackground(Color.WHITE);
        addMouseMotionListener(this);
        addMouseListener(this);
    } 

    /**
    * 拖
    */
    public void mouseDragged(MouseEvent e) {
        e.consume();     
        colors.addElement(getForeground());
        lines.addElement(new Rectangle(x1, y1, e.getX(), e.getY()));
        x1 = e.getX();
        y1 = e.getY();
        repaint();
    } 
   
    /**
    * 按住鼠标
    */
    public void mousePressed(MouseEvent e) {
        e.consume();
        colors.addElement(getForeground());
        lines.addElement(new Rectangle(e.getX(), e.getY(), -1, -1));
        x1 = e.getX();
        y1 = e.getY();
        repaint();
    }

    //Further ...
    public void mouseMoved(MouseEvent e) {}   
    public void mouseReleased(MouseEvent e) {}
    public void mouseEntered(MouseEvent e) {}
    public void mouseExited(MouseEvent e) {}
    public void mouseClicked(MouseEvent e) {}

    public void paint(Graphics g) {
        int points = lines.size();         
        g.setColor(getForeground());
       
        for (int i=0; i < points; i++) {
            Rectangle rec = (Rectangle)lines.elementAt(i);
            g.setColor((Color)colors.elementAt(i));
            //画法.
            if (rec.width != -1) {
                g.drawLine(rec.x, rec.y, rec.width, rec.height); 
            } else {
                g.drawLine(rec.x, rec.y, rec.x, rec.y); 
            }
        }       
    }
}
package org.vito.draw.temp.test;

import java.awt.Button;
import java.awt.Label;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Vector;

/**
* 显示面板.
* @author vito
*
*/
class ShowPanel extends Panel implements ActionListener{
    /**
     *
     */
    private static final long serialVersionUID = 6044523251854800419L;   
   
    MyPanel panel;
   
    Button redo;
    Label showLabel;
   
    public ShowPanel(MyPanel panel){
        this.panel = panel;
        showLabel = new Label("可以用鼠标在下面写写画画...点击...拖动");
        redo = new Button("Clean ...");   
        redo.addActionListener(this);
        add("West",showLabel);
        add("East",redo);       
    }
   
    public void actionPerformed(ActionEvent e) {
        if(e.getSource() == redo){           
            panel.lines = new Vector();  //redefine
            panel.colors = new Vector();           
            panel.repaint();
        }
    }
}



目前就是这个样子...
发个附件哈
附件: paint.jar (5 K) 下载次数:11

本帖最近评分记录:
  • 浮云:5(est) 原创内容 无论如何都要鼓励原创
  • 浮云:5(kangtalc) 请看哪个帖子的活动内容,发这个还是小给你加点的。
  • 顶端 Posted: 2007-11-04 10:06 | [楼 主]
    vito



    性别: 帅哥 状态: 该用户目前不在线
    等级: 人见人爱
    发贴: 2741
    威望: 0
    浮云: 1106
    在线等级:
    注册时间: 2005-10-14
    最后登陆: 2009-10-16

    5come5帮你背单词 [ cause /ko:z/ vt. 造成,引起,使得;n. 原因,事业,奋斗目标 ]


    附件的效果就是这样............
    paint.JPG
    顶端 Posted: 2007-11-04 10:06 | [1 楼]
    vito



    性别: 帅哥 状态: 该用户目前不在线
    等级: 人见人爱
    发贴: 2741
    威望: 0
    浮云: 1106
    在线等级:
    注册时间: 2005-10-14
    最后登陆: 2009-10-16

    5come5帮你背单词 [ referee /refə'ri:/ n. 裁判,公断人 ]


    我这个 是响应版主的号召

    Quote:

    【活动】5come5五周年纪念活动有 巨量浮云 相送
    顶端 Posted: 2007-11-04 10:11 | [2 楼]
    tuotuo25



    性别: 帅哥 状态: 该用户目前不在线
    等级: 人见人爱
    发贴: 3127
    威望: 0
    浮云: 2118
    在线等级:
    注册时间: 2007-11-01
    最后登陆: 2008-06-29

    5come5帮你背单词 [ down /daun/ ad. 向下,在下面,由大到小,往南,处于低落状态;prep. 下,沿着…往下;a. 向下的 ]


    打不开
    顶端 Posted: 2007-11-04 10:15 | [3 楼]
    sikanglu



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 挖墙角的机会都不给!!
    等级: 荣誉会员
    家族:
    发贴: 8760
    威望: 0
    浮云: 458
    在线等级:
    注册时间: 2005-10-20
    最后登陆: 2010-07-30

    5come5帮你背单词 [ transmit /trænz'mit/ vt. 传递,传送,播送,发射 ]


    linux下不能编译!
    顶端 Posted: 2007-11-04 10:18 | [4 楼]
    kangtalc



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 揍敌客·奇犽
    等级: 希望之光
    家族: 万人坑恋影部落
    发贴: 1723
    威望: 5
    浮云: 1113
    在线等级:
    注册时间: 2005-09-21
    最后登陆: 2008-06-29

    5come5帮你背单词 [ certificate /sə'tifikit/ n. 证(明)书,执照 ]


    Quote:
    引用第2楼vito于2007-11-04 10:11发表的  :
    我这个 是响应版主的号召



    请点击看那个帖子的活动内容哈
    顶端 Posted: 2007-11-04 10:51 | [5 楼]
    vito



    性别: 帅哥 状态: 该用户目前不在线
    等级: 人见人爱
    发贴: 2741
    威望: 0
    浮云: 1106
    在线等级:
    注册时间: 2005-10-14
    最后登陆: 2009-10-16

    5come5帮你背单词 [ predominant /pri'dominənt/ a. 占优势的,主要的,突出的 ]


    Quote:
    引用第3楼tuotuo25于2007-11-04 10:15发表的  :
    打不开


    要java 虚拟机的 .......
    顶端 Posted: 2007-11-04 11:03 | [6 楼]
    lsy



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 信我者,得永生
    等级: 人见人爱
    家族: YD一族
    发贴: 2226
    威望: 5
    浮云: 1591
    在线等级:
    注册时间: 2006-11-29
    最后登陆: 2009-10-01

    5come5帮你背单词 [ happen /'hæpən/ vi. (偶然)发生,碰巧,不巧 ]


    这段代码怎么看着这么眼熟  
    顶端 Posted: 2007-11-04 13:11 | [7 楼]
    kangtalc



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 揍敌客·奇犽
    等级: 希望之光
    家族: 万人坑恋影部落
    发贴: 1723
    威望: 5
    浮云: 1113
    在线等级:
    注册时间: 2005-09-21
    最后登陆: 2008-06-29

    5come5帮你背单词 [ librarian /lai'br/əriən/ n. 图书馆馆长(或馆员) ]


    Quote:
    引用第7楼lsy于2007-11-04 13:11发表的  :
    这段代码怎么看着这么眼熟  

    本来也不是很难哈
    顶端 Posted: 2007-11-04 13:37 | [8 楼]
    lsy



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 信我者,得永生
    等级: 人见人爱
    家族: YD一族
    发贴: 2226
    威望: 5
    浮云: 1591
    在线等级:
    注册时间: 2006-11-29
    最后登陆: 2009-10-01

    5come5帮你背单词 [ starvation /'sta:veiən/ n. 饥饿,饿死 ]


    Quote:
    引用第8楼kangtalc于2007-11-04 13:37发表的  :

    本来也不是很难哈


    我是初学者不要打击我
    顶端 Posted: 2007-11-04 13:57 | [9 楼]
    我来我网·5come5 Forum » 程序员之家

    Total 0.012129(s) query 5, Time now is:11-22 22:39, Gzip enabled
    Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号