2012-06-13 76 views
3

我想绘制矩形只是指定百分比高的面板im绘制它,当我调整面板它应该调整自己。但我的问题是,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); 
    } 
} 
+0

还应考虑使用'AffineTransform'。 –

回答

6

试试这个:

this.getHeight()-(45*this.getHeight())/100 
+0

令人惊叹,谢谢:) –