我有一個JFrame表示想是這樣的: GUI通過手工編碼
這裏是我的代碼,但顯示全屏按鈕!
public class editFrame extends JFrame {
JButton saveButton;
JButton cancelButton;
public editFrame() {
Component add = this.add(createForm());
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setBounds(100, 50, 500, 600);
this.setVisible(true);
}
public JPanel createForm() {
String[] labels = {"ID", "Name", "Date", "Borrow Status"};
// Create and populate jpanel
JPanel panel = new JPanel();
for (int i = 0; i < 4; i++) {
JLabel l = new JLabel(labels[i], JLabel.TRAILING);
panel.add(l);
JTextField textField = new JTextField(10);
l.setLabelFor(textField);
panel.add(textField);
}
SpringLayout sL = new SpringLayout();
panel.setLayout(sL);
SpringUtilities.makeCompactGrid(panel, 4, 2, 6, 6, 6, 6);
return panel;
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
editFrame edF = new editFrame();
}
});
}
}
我試圖用彈簧的佈局,但現在是:
所有JTextField的情況都這麼大了!
'我可以使用Spring Layout嗎?'您不僅限於一個佈局管理器。您可以創建多個面板,其中每個面板都有不同的佈局。 – camickr 2013-03-24 21:14:24
@camickr更新我的代碼,但現在我的JTextField都這麼大了...... – Sajad 2013-03-24 21:17:18
我添加了一個答案,以解決上述問題。 – camickr 2013-03-24 21:58:23