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

📄 piechartcanvas.java

📁 java移动通信程序设计
💻 JAVA
字号:
import javax.microedition.lcdui.*;

class PieChartCanvas extends Canvas {

  int width = 0;
  int height = 0;
  int[] data;
  int colors[]={0xFF0000,0xA9E969,0x00FFFF,0xC675EC,0x008800,0x00C400};

  public PieChartCanvas(int[] data) {
         this.data = data;
  }

  public void paint(Graphics g) {
         int width=this.getWidth();
         int height=this.getHeight();

         g.setColor(255,255,255);
         g.fillRect(0,0,width,height);

         int sum=0;
         for(int i=0; i<data.length; i++) {
             sum+=data[i];
         }
         System.out.println("sum = "+sum);

         int deltaAngle=360*100/sum/100;
         System.out.println("deltaAngle: "+deltaAngle);

         int x=4;
         int y=4;
         int diameter;

         if(width>height)
            diameter=height-y*2;
         else
            diameter=width-x*2;

         int startAngle=0;

         for (int i=0; i<data.length; i++) {
             g.setColor(colors[i]);
             if(i==3)
               g.fillArc(x-4, y+4, diameter, diameter, startAngle,deltaAngle*data[i]);
             else
               g.fillArc(x, y, diameter, diameter, startAngle, deltaAngle*data[i]);
             System.out.println("start:"+startAngle+"  ending:"+deltaAngle*data[i]);

             startAngle+=deltaAngle*data[i];
         }

        }
}

⌨️ 快捷键说明

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