2011-06-11 43 views
1

我有一個JInternal框架,我想在其中繪製一個圓(使用2D圖形),並使其變得靈活。我的意思是當我改變框架的大小時,圓圈變小或者使框架變大的圓圈也變大。有人可以幫忙嗎?在金框中繪製2D圓

回答

3

您將在JInternalFrame的contentPane中保存的JPanel或JComponent的paintComponent方法中繪製,與您在任何其他JPanel中繪製相同。我將在paintComponent方法的開始處獲取JPanel的尺寸,並使用這些值來說明繪製圓的大小。另外,如果將JPanel直接添加到JInternalFrame的contentPane中,它將默認添加BorderLayout.CENTER,所以當JInternalFrame更改大小時,JPanel也更改大小,它的paintComponent將由JVM調用,新圖形將自動調整大小。

+0

非常感謝這樣的幫助 – SunyGirl 2011-06-11 22:24:16

+1

+1這裏有一個相關的[示例](http://stackoverflow.com/questions/3538082/painted-content-invisible -while調整大小功能於爪哇/ 3538279#3538279)。 – trashgod 2011-06-11 23:09:17

+0

謝謝你的例子。太好了! – SunyGirl 2011-06-12 21:51:57

0

添加WindowListener到jInteralFrame和重繪每當大小的變化

+0

如果您正在繪製JInternalFrame中的BorderLayout.CENTER組件,則不需要窗口偵聽器。 – 2011-06-11 22:29:12

+0

@Hovercraft Full Of Eels很好,我認爲這將是顯而易見的,他正在談論手動繪製一個圖形對象在畫布上或東西 – 2011-06-12 01:31:57