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

📄 arcspanel.java

📁 此代码是java多线程编写的一个风扇的小例子
💻 JAVA
字号:
import java.awt.BorderLayout;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;


class ArcsPanel extends JPanel implements ActionListener {
	Graphics g;
	int i = 0;
	int speed = 0;

	protected void paintComponent(Graphics g) {
		super.paintComponent(g);
		int xCenter = getWidth() / 2;
		int yCenter = getWidth() / 2;
		int radius = (int) (Math.min(getWidth(), getHeight()) * 0.4);

		int x = xCenter - radius;
		int y = yCenter - radius;
        i=i+10;
		g.fillArc(x, y, 2 * radius, 2 * radius, -i, -30);
		g.fillArc(x, y, 2 * radius, 2 * radius, -(i + 90), -30);
		g.fillArc(x, y, 2 * radius, 2 * radius, -(i + 180), -30);
		g.fillArc(x, y, 2 * radius, 2 * radius, -(i + 270), -30);

	}

	public  void setSpeed( int speed,ArcsPanel ap) {
		this.speed = speed;
		
		Timer t = new Timer(speed,ap);
		t.start();
	}
	
	
	public void actionPerformed(ActionEvent e) {
		
		g = getGraphics();

	
		paintComponent(g);

	}

}

⌨️ 快捷键说明

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