資源簡介
用Java模擬畫圖板,實現(xiàn)基本圖形的繪畫,并支持撤銷、清空、重復(fù)功能,可提供顏色選擇。。。

代碼片段和文件信息
package?lab14;
import?java.awt.*;
import?java.awt.event.*;
import?javax.swing.*;
public?class?Myframe?extends?Jframe{
private?JRadioButton?linerectangleovalcurve;
private?JRadioButton?redblueblack;
private?JButton?jbt?=?new?JButton(“Clear“);
private?JButton?undo?=?new?JButton(“Undo“);
private?JButton?redo?=?new?JButton(“Redo“);
private?Paint?paint?=?new?Paint();??//畫圖的界面
private?int?type?colorType;
private?int?x1x2y1y2;
public?Myframe(){
JPanel?jp1?=?new?JPanel();
jp1.setLayout(new?GridLayout(101));
jp1.add(line?=?new?JRadioButton(“Line“));
jp1.add(rectangle?=?new?JRadioButton(“Rectangle“));
jp1.add(oval?=?new?JRadioButton(“Oval“));
jp1.add(curve?=?new?JRadioButton(“Curve“));
jp1.add(red?=?new?JRadioButton(“Red“));
jp1.add(blue?=?new?JRadioButton(“Blue“));
jp1.add(black?=?new?JRadioButton(“Black“));
jp1.add(jbt);
jp1.add(undo);
jp1.add(redo);
ButtonGroup?group1?=?new?ButtonGroup();
group1.add(line);
group1.add(rectangle);
group1.add(oval);
group1.add(curve);
ButtonGroup?group2?=?new?ButtonGroup();
group2.add(red);
group2.add(blue);
group2.add(black);
setLayout(new?BorderLayout());
add(jp1?BorderLayout.WEST);
add(paint?BorderLayout.CENTER);
paint.addMouseListener(new?PressListener());
paint.addMouseMotionListener(new?DragListener());
line.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
type?=?1;
}
});
rectangle.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
type?=?2;
}
});
oval.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
type?=?3;
}
});
curve.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
type?=?4;
}
});
red.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
colorType?=?1;
//paint.setColor(colorType);
}
});
blue.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
colorType?=?2;
//paint.setColor(colorType);
}
});
black.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
colorType?=?0;
//paint.setColor(colorType);
}
});
jbt.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
paint.setIsClear(true);
paint.repaint();
paint.clear();
}
});
undo.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
paint.undo();
paint.repaint();
}
});
redo.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
paint.redo();
paint.repaint();
}
});
}
public?static?void?main(String[]?args){
Myframe?frame?=?new?Myframe();
frame.settitle(“Painter“);
frame.setLocationRelativeTo(null);
fr
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????232??2008-12-18?18:27??lab14\.classpath
?????文件????????381??2008-12-18?18:27??lab14\.project
?????文件????????662??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????744??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????662??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????662??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????662??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????662??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????662??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????662??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????788??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????742??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件????????981??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件???????1033??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件???????4150??2009-10-06?09:35??lab14\bin\lab14\Myfr
?????文件???????3990??2009-10-06?09:35??lab14\bin\lab14\Paint.class
?????文件???????3566??2008-12-18?23:26??lab14\src\lab14\Myfr
?????文件???????3949??2008-12-21?12:40??lab14\src\lab14\Paint.java
?????目錄??????????0??2009-10-06?09:35??lab14\bin\lab14
?????目錄??????????0??2008-12-18?18:28??lab14\src\lab14
?????目錄??????????0??2009-10-06?09:35??lab14\bin
?????目錄??????????0??2008-12-18?18:27??lab14\src
?????目錄??????????0??2008-12-18?18:27??lab14
-----------?---------??----------?-----??----
????????????????25190????????????????????23
評論
共有 條評論