java有现成的api,何必去重新写一个呢?
解决方案 »
- 关于容器添加组件的层次问题(在线等)
- XML处理问题之小问,高手请进
- 谁碰到过Grphics的这种诡异的事情呀?
- 如何得到JTree修改节点前/后事件?
- 各位大侠哪里有IBM WEBSPHERE STUDIO DEVELOP DEVICE5.5下载,急,谢谢先
- 串口通信如何作?java可以实现么?
- 串口发送数据失败 Win32SerialPort
- 中文问题:utf-8编码转成GBK,因为位数不同而产生字符丢掉问题!!
- 38分,请高手讲一下classpath和Packages的关系?
- ResultSet rs=pstmt.executeQuery();执行总出错,求问
- 我写了服务器端的程序,请教怎么把它做成服务,让机器一起动,就自动运行起来!
- 能把一个数据库的表名用jdbc取出来
public void paint()
{
if(id==0)
{ //*****;
super.paint();
}
else
if(id==1)
{
//*****
super.paint();
}
}
可否?
也相当于是两个函数了
如果单独画直线时,这样
public void paint(graphics g){
.....
g.drawLine(x1,y1,x2.y2);
}
单独画多边形,这样
public void paint(graphics g){
......
g.drawPolygon(xpoint[],ypoint[],npoint);
}
上面的大家都知道,问题是我在一起用时,
repaint()时怎么写,如果用repaint()也不知道它会调用哪个啊,
或者上面两个函数某一个该怎么改一下?
是否只能设计两个不同参数的类?
public void paint();
}public class OperationLine implements Operation {
public void paint(graphics g){
g.drawLine(x1,y1,x2.y2);
}
}public class OperationPolygon implements Operation {
public void paint(graphics g){
g.drawPolygon(xpoint[],ypoint[],npoint);
}
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;/*
* Created on 2005-4-11
*//**
* @author yanbin.qiu
*/
public class TestGraphics extends JFrame
{
public static void main(String[] args)
{
final JPanel panel= new JPanel();
panel.setLayout(new FlowLayout());
JButton b1 = new JButton("画圆");
JButton b2 = new JButton("画框");
panel.add(b1);
panel.add(b2);
b1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Graphics g = panel.getGraphics();
g.setColor(Color.blue);
g.clearRect(120,40,500,500);
g.drawOval(120,40,400,400);
}
});
b2.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Graphics g = panel.getGraphics();
g.setColor(Color.red);
g.clearRect(120,40,500,500);
g.draw3DRect(120,40,400,400,true);
}
});
JFrame test= new TestGraphics();
test.setSize(640,480);
test.setContentPane(panel);
test.setVisible(true);
test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}