如何將組件放置在特定位置的佈局中。 就像我想放置2個文本框在第一行,下面3個組合框。如何將組件放置在特定位置?
但是,當我試圖把他們都出現在一行,我用了flowlayout。我也使用了邊框。當我調整大小時,組件的窗口大小將從邊框出去。
你可以建議我使用一些佈局以及如何使用它?
這裏是我的代碼:
topPanel=new JPanel();
topPanel.setLayout(new FlowLayout());
topPanel.setBorder(new TitledBorder(new EtchedBorder(), "Customer Data"));
CNameTextField = new JTextField (20); // create the Customer Name text field
CNameTextField.setEditable(true); // set editable text box
CIDLabel=new JLabel("Customer ID");
C_IDTextField = new JTextField (10);
C_IDTextField.setEditable(true); // set editable text box
topPanel.add(CNameTextField);
topPanel.add(C_IDTextField);
// Create and populate Room type combo box
roomTypeCombo = new JComboBox();
roomTypeCombo.addItem("Budget($50)");
// Create and populate Meal type combo box
mealCombo = new JComboBox();
mealCombo.addItem("None");
// Create and populate Days combo box
daysCombo = new JComboBox();
for(int i=0;i<31 ; i++) {
// populate combobox with days
daysCombo.addItem(i);
}
// Adding rest of the components to top panel
topPanel.add(roomTypeCombo);
topPanel.add(mealCombo);
topPanel.add(daysCombo);
感謝。
如果我可以使用[MigLayout(http://www.miglayout.com/)太好了這樣的事情,太容易實現:-)或者你可以去[GridBagLayout的] (http://docs.oracle.com/javase/tutorial/uiswing/layout/gridbag.html),只是這個有時候有點難處理:-( – 2012-04-04 17:31:22