0
我使用java swing 我試過witj一些佈局,但他們did''work。 我有一個mainpanel,其中包含一些面板,或者向右或向左移動 ,其中一個顯示在下面。將JPanel添加到JPanel的右側或左側
有人知道該怎麼辦? 感謝所有
我使用java swing 我試過witj一些佈局,但他們did''work。 我有一個mainpanel,其中包含一些面板,或者向右或向左移動 ,其中一個顯示在下面。將JPanel添加到JPanel的右側或左側
有人知道該怎麼辦? 感謝所有
這是一個聊天應用程序,
如果你只是顯示在面板的文字,你也許能夠使用的JTextPane用左/右對齊文本如下所示:Java Swing JTextArea write both left and right
或者您希望使用帶有每列一個組件的GridBagLayout
。然後您需要使用:
fill
對每個組件的約束,以便填充行中可用的寬度。anchor
約束,以便該組件位於LINE_START
或LINE_END
上。閱讀關於Using a GridBagLayout的Swing教程的部分,瞭解關於這些約束的更多信息。
或者,您可以使用Relative Layout,這也允許面板的垂直佈局。在這種情況下,代碼將如下所示:
RelativeLayout rl = new RelativeLayout(RelativeLayout.Y_AXIS);
rl.setFill(true);
setLayout(rl);
JPanel left = new JPanel(new FlowLayout(FlowLayout.LEFT));
left.add(new JLabel("left"));
add(left);
JPanel right = new JPanel(new FlowLayout(FlowLayout.RIGHT));
right.add(new JLabel("right"));
add(right);
所以您只需要管理每個面板的FlowLayout對齊。
網格或網格包佈局...網格:所有單元具有相同的維度,一個單元中有一個孩子,每個單元最多有一個孩子。網格包:稍微複雜一些。使用網格2x2,其中一個面板在(1,0),另一個在(0,1)。 –
但窗格的數量未定義,它們可以是14或100 –
然後在知道窗格數量時相應地創建一個網格佈局,問題是什麼? –