⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arctest.java

📁 java applet编程,实现对相关图片声音的调用
💻 JAVA
字号:
import java.awt.event.*;
import java.applet.*;
import java.awt.*;

public class ArcTest extends Applet
{
    ArcControls controls;

    public void init()
	{
		setLayout( new BorderLayout() );
		ArcCanvas c = new ArcCanvas();
		add( c, "Center" );
		controls = new ArcControls(c);
		add( controls, "South" ); 
	}

	public void start()
	{
		controls.setEnabled( true );
	}

	public void stop()
	{
		controls.setEnabled( false );
	}
}

class ArcCanvas extends Canvas
{
	int startAngle = 0;
	int endAngle = 45;
	boolean filled = false;

	public void paint(Graphics g)
	{
		Rectangle r = getBounds();
		int hlines = r.height/10;
		int vlines = r.width/10;

		//画背景网格
		g.setColor(Color.pink);
		for( int i = 1; i <= hlines; i++ )
		{
			g.drawLine(0, i*10, r.width, i*10 );
		}
		for( int i = 1; i <= vlines; i++ )
		{
			g.drawLine(i*10, 0, i*10, r.height);
		}

		//画圆弧
		g.setColor(Color.red);
		if( filled )
		{
			g.fillArc(0, 0, r.width-1,r.height-1, startAngle, endAngle);
		}
		else
		{
			g.drawArc(0, 0, r.width-1,r.height-1, startAngle, endAngle);
		}

		//画相线及写角度
		g.setColor(Color.black);
		g.drawLine(0, r.height/2, r.width, r.height/2);
		g.drawLine(r.width/2, 0, r.width/2, r.height);
		g.drawLine(0, 0, r.width, r.height);
		g.drawLine(0, r.height, r.width, 0);
		int sx = 10;
		int sy = r.height -30;
		g.drawString("S=" + startAngle, sx, sy);
		g.drawString("E=" + endAngle, sx, sy + 15);
	}

	public void redraw(boolean filled, int startAngle, int endAngle)
	{
		this.filled = filled;
		this.startAngle = startAngle;
		this.endAngle = endAngle;
		
		repaint();
	}
}

class ArcControls extends Panel implements ActionListener
{
	TextField start;
	TextField end;
	Button fill;
	Button draw;

	ArcCanvas canvas;
	
	public ArcControls(ArcCanvas canvas)
	{
		this.canvas = canvas;

		start = new TextField("0", 4);
		add(start);

		end = new TextField("45", 4);
		add(end);
		
		fill = new Button("填充");
		fill.addActionListener(this);
		add(fill);
		
		draw = new Button("不填充");
		draw.addActionListener(this);
		add(draw);
	}

	public void actionPerformed(ActionEvent e)
	{
		String label = e.getActionCommand();
		canvas.redraw( label.equals("填充"), 
		Integer.parseInt((start.getText()).trim()),
		Integer.parseInt((end.getText()).trim()) );
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -