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

📄 bitstats.java

📁 用java实现的自适应哈夫曼算法
💻 JAVA
字号:

import java.awt.*;


public class BitStats extends Panel {

    BitStats (Color foreground, Color background) {

        fontColor = foreground;
        backColor = background;

        textFont = this.getFont();

    }

    public void addBits (int raw, int compressed) {


        charsent++;
        rawbits += raw;
        compbits += compressed;
        ratio = (int)((1 - ((float)(compbits))/((float)(rawbits))) * 100);

        repaint();


    }



    public void paint(Graphics g) {

        Dimension size = size();

        g.setFont(textFont);

       metrics = g.getFontMetrics();
       height = metrics.getHeight();
       descent = metrics.getDescent();
       buffer = metrics.stringWidth("8888");


        g.setColor(backColor);
        g.fillRect(0, 0, size.width, size.height);

        g.setColor(fontColor);

        g.drawString("Chars Sent ", 5, (height) );
        g.drawString("Bits uncomp", 5, 2*(height) );
        g.drawString("Bits comp  ", 5, 3*(height) );
        g.drawString("Comp ratio ", 5, 4*(height) );

        g.drawString("" + charsent, (size.width-buffer), height );
        g.drawString("" + rawbits, (size.width-buffer), 2*height );
        g.drawString("" + compbits, (size.width-buffer), 3*height );
        g.drawString("" + ratio + "%" , (size.width-buffer), 4*height );





    }




    int rawbits, compbits = 0;
    int charsent, ratio = 0;


    Color fontColor;
    Color backColor;

    Font textFont;
    FontMetrics metrics;
    int height;
    int descent;
    int buffer;

}

⌨️ 快捷键说明

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