java画板小demo(五)

2014-11-24 10:24:08 · 作者: · 浏览: 4
nput = new BufferedReader(new FileReader("out.dat"));
for(int i=0;i<4;i++)
{
Vector> datas = new Vector>();
String str = input.readLine();
int size = Integer.parseInt(str);
for(int j=0;j {
Vector ps = new Vector();
String st = input.readLine();
int pp = Integer.parseInt(st);

for(int k=0;k {
String sx = input.readLine();
int x = Integer.parseInt(sx);
String sy = input.readLine();
int y = Integer.parseInt(sy);
Point p = new Point(x,y);
ps.add(p);
}
datas.add(ps);
}
allReadDatas.add(datas);
}

Vector> clone1 = (Vector>) allReadDatas.get(0).clone();
FreedomDatas = clone1;
Vector> clone2 = (Vector>) allReadDatas.get(1).clone();
lineDatas = clone2;
Vector> clone3 = (Vector>) allReadDatas.get(2).clone();
ellipseDatas = clone3;
Vector> clone4 = (Vector>) allReadDatas.get(3).clone();
rectangleDatas = clone4;

repaint();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}

drawFrame.java
import java.awt.*;
import java.awt.event.*;

import javax.swing.*;


public class DrawFrame extends JFrame{

/**

*
*/
private static final long serialVersionUID = 1L;

public DrawFrame()
{
super("20102100227 王嘉铠");

//菜单栏
JMenuBar myBar = new JMenuBar();
setJMenuBar(myBar);

JMenu []m = {new JMenu("文件"), new JMenu("图形"), new JMenu("线条宽度"), new JMenu("颜色")};

JMenuItem [][]mI = {
{new JMenuItem("打开"),new JMenuItem("新建"),new JMenuItem("保存")},
{new JMenuItem("自由"),new JMenuItem("直线"),
new JMenuItem("椭圆"),new JMenuItem("矩形")},
{new JMenuItem("5"), new JMenuItem("10"),new JMenuItem("15"),new JMenuItem("20")},
{new JMenuItem("红色"),new JMenuItem("黄色"),new JMenuItem("绿色"),
new JMenuItem("灰色"),new JMenuItem("黑色"), new JMenuItem("蓝色")}
};

int i;
int j;
for(i=0;i {
myBar.add(m[i]);
for(j=0;j {
m[i].add(mI[i][j]);
}
}

//画板
Container contentPane = getContentPane();
contentPane.setBounds(0, myBar.getHeight(),getWidth(),getHeight() - myBar.getHeight());
final MyPanel panel = new MyPanel();
contentPane.add(panel);

//各种监听器

mI[0][0].addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
panel.readFromFile();
}

});