2010-03-19 54 views
0

我希望子圖(org.eclipse.draw2d.Figure)相對於父窗口的右上角(我想放置一些小圖標,這將是ImageFigure,從頂部和右邊界起12個像素)。有沒有現有的佈局管理器可以這樣佈局小孩?將圖放在另一個的右上角

org.eclipse.draw2d.XYLayout不能測量相對於除左上角以外的角的位置。

當然,我可以:

  1. 寫佈局管理自己
  2. 佈局圖兒童每天界限改變父時間(父佈局()方法)。

但是,我想知道一些現有的佈局管理器是否提供了該功能。

請注意,問題是關於Eclipse GEF,而不是純SWT/JFace或Swing。

回答

0

許多佈局允許您在右側放置組件。 FlowLayout,BoxLayout,GridBagLayout。使用FlowLayout可能是最簡單的。您可以將水平和垂直間隙設置爲12,使用右對齊,它應該可以解決您的問題。

或者,您可以將一個EmptyBorder添加到頂部/右側插入爲12的組件中,以確保將其正確放置在您想要的位置。

-1

沒有任何標準佈局管理員會爲您做這件事。

我能想到兩個可能性:

  1. 在頂層容器(的JWindow,JDialog的,JFrame的,JApplet的)添加玻璃面板和油漆的圖標出現。

  2. 創建一個將繪製圖標的邊框。我非常喜歡這個想法,因爲它可以與任何JComponent一起使用,並且很明顯它是組件上的裝飾。

相關問題