2016-11-26 45 views
1

我想準確地在面板內繪製一個橢圓的周界內,類似於繪製一個橢圓恰好一個AWT面板

enter image description here

@Override 
    public void paint(Graphics g) { 
     super.paint(g); 
      g.drawOval(x,y,this.getHeight(), this.getHeight()); 
     } 
    } 

x:要繪製的橢圓的左上角的x座標。 y:要繪製的橢圓的左上角的y座標。

那麼xy應該是什麼?

回答

2

xy都應該爲0,因爲這將橢圓的左上角設置在JPanel的左上角。此外,該行:

g.drawOval(x,y,this.getHeight(), this.getHeight()); 

實際上應該是

g.drawOval(x, y, this.getWidth(), this.getHeight()); 

,以確保橢圓形的正確繪製;否則,無論JPanel的大小如何,它都將是圓形的。

+0

工作。由於橢圓形是無角的形狀,我對第一個和第二個參數感到困惑。 –

+0

如果能幫助解決問題,請[接受答案](http://meta.stackexchange.com/a/5235/155831)。用於檢查JavaDocs的+1。 –