java代码如何绘制一个圆形进度条呢?

重生 Java经验 发布时间:2024-03-03 10:11:33 阅读数:7801 1
下文笔者讲述java代码绘制圆形进度条的方法及示例分享,如下所示
    Java代码绘制圆形进度条的实现思路
      1.定义一个Graphics2D对象
      2.借助对象中的方法进行圆形进度条绘制
         CircularProgressBar类继承自JPanel
          并重写paintComponent方法来绘制圆形进度条
例:Java绘制圆形进度条
import javax.swing.*;
import java.awt.*;
import java.awt.geom.Arc2D;
public class CircularProgressBar extends JPanel {
private int progress;
public CircularProgressBar() {
  progress = 0;
}
public void setProgress(int progress) {
   this.progress = progress; 
   repaint();
}

@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
 // 计算进度条的角度范围
 int angle = (int) (360 * (progress / 100.0));
 // 设置绘制的颜色
 g2d.setColor(Color.BLUE);
 // 绘制圆形进度条
 g2d.fill(new Arc2D.Double(10, 10, getWidth() - 20, getHeight() - 20, 90, -angle, Arc2D.PIE));
}

public static void main(String[] args) {
  JFrame frame = new JFrame("Circular Progress Bar");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(420,420);
    CircularProgressBar progressBar = new CircularProgressBar();
     progressBar.setProgress(50);
     frame.add(progressBar);
     frame.setVisible(true);
  }
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202403/17094326328081.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者