Java之画图

	画图(P267)
	
	import java.awt.*;
	import java.awt.event.ActionEvent;
	import java.awt.event.ActionListener;
	
	import javax.swing.*;
	
	public class drawgraph implements ActionListener{
		
		JFrame frame = new JFrame("Drawing example");
		MyButton button = new MyButton("Draw");
		MyPanel panel= new MyPanel();
		int tag = 1;
		public static void main(String [] arg)
		{
			drawgraph de= new drawgraph();
			de.go();
		}
		
		public void go()
		{
			button.addActionListener(this);
			
			frame.getContentPane().add(button, "South");
			frame.getContentPane().add(panel, "Center");
			frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
			frame.setSize(360, 200);
			frame.setVisible(true);
		}
		
		public void actionPerformed(ActionEvent e)
		{
			if(tag == 0)
			{
				tag = 1;
				button.setText("Draw");
			}
			else
			{
				tag = 0;
				button.setText("Clear");
			}
			panel.repaint();
		}
		
		
		class MyButton extends JButton
		{
			MyButton(String text)
			{
				super(text);
			}
			
			protected void paintComponent(Graphics g)
			{
				super.paintComponent(g);
				g.setColor(Color.red);
				int width = getWidth();
				int height = getHeight();
				g.drawOval(4, 4, width - 8, height - 8);
				
			}
		
		}
		
			class MyPanel extends JPanel
		{
			protected void paintComponent(Graphics g)
			{
				super.paintComponent(g);
				if(tag == 0)
				{
					g.setColor(Color.BLUE);
					g.drawLine(40, 25, 30, 50);
					g.setColor(Color.green);
					g.drawRect(100, 50, 100, 46);
					
					
				}
			}
		}
	
		
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值