2017-04-20 70 views
0

我正在開發JAVA Gui。Java GUI。如何讓Jpanel在不改變現有佈局的情況下重畫

我有一個Jpanel,我可以添加一個Jlabel並將它拖到面板內的其他地方。 然後我可以創建一個新的Jlabel,依此類推。 我無法解決的問題是,當創建一個新的JLabel並將其添加到面板中時,面板調用repaint()。現有的標籤和新的JLabel排隊。 我希望現有標籤在添加新標籤時留在其位置。

有什麼建議嗎? 謝謝!

+0

您正在與佈局管理器打交道,默認爲'FlowLayout'。我會建議也許看看[這個例子](http://stackoverflow.com/questions/11819669/absolute-positioning-graphic-jpanel-inside-jframe-blocked-by-blank-sections/11822601#11822601)哪使用自定義佈局管理器將組件定位在特定點上,修改它並不難,以便在更新組件時更改組件的「虛擬點」值。這將與API的其餘部分相關聯,並減少問題的總數 – MadProgrammer

回答

0

要在隨機位置定位組件,您需要:

  1. 使用空佈局(不推薦)
  2. 使用自定義佈局管理器

退房的Drag Layout。這是一個自定義佈局管理器,旨在提供佈局管理支持,同時讓您管理每個組件的位置。

相關問題