绘制矩形占绘图面板的百分之几

Roh*_*ish 3 java swing awt java-2d jpanel

我想绘制矩形,只指定面板的高百分比,并且当我调整面板大小时,它应该调整自身大小.但我的问题是drawRect()只接受整数,所以当我尝试绘制矩形例如45%的面板高度时,如果面板高度小于100,它将转换为0.

我的代码很简单,所以你可以尝试一下.这是我的代码:

public class Drawer extends JPanel {

    @Override
    public void paintComponent(Graphics g) {
        super.paintComponent(g);
            g.fillRect(10,this.getHeight()-this.getHeight()/100*45, 100, this.getHeight()-this.getHeight()/100*45);
    }
}
Run Code Online (Sandbox Code Playgroud)

Ran*_*ndy 6

试试这个:

this.getHeight()-(45*this.getHeight())/100
Run Code Online (Sandbox Code Playgroud)