我有一個具有BoxLayout
(頁面軸)的JPanel,我想佈置兩個組件,一個在另一個之上。BoxLayout添加左邊距
我的問題是保證金的大lipsum框的左側,我怎麼能擺脫嗎?如果我不添加頂部組件,則沒有餘量。
這是我的代碼,所述第二圖像是通過不添加headerPanel
創建:
JLabel commandLabel = new JLabel(command);
JLabel paramLabel = new JLabel(params);
JLabel descLabel = new JLabel("<html><body style='width: 200px;'>" + description + "</body></html>");
Font baseFont = commandLabel.getFont(), commandFont, paramFont, descFont;
commandFont = baseFont.deriveFont(Font.BOLD);
paramFont = baseFont.deriveFont(Font.ITALIC);
descFont = baseFont.deriveFont(Font.PLAIN);
commandLabel.setFont(commandFont);
paramLabel.setFont(paramFont);
descLabel.setFont(descFont);
descLabel.setAlignmentX(LEFT_ALIGNMENT);
descLabel.setBorder(BorderFactory.createStrokeBorder(new BasicStroke()));
JPanel headerPanel = new JPanel(new FlowLayout(FlowLayout.LEADING));
headerPanel.add(commandLabel);
headerPanel.add(paramLabel);
this.add(headerPanel);
this.add(descLabel);
此類擴展JPanel
,並且被添加到一個JFrame
,這簡直是pack()
倒是
'這是我的代碼' - 發佈一個合適的[mcve]來演示問題。我們無法編譯/執行提供的代碼。 – camickr