我对JPanel并不是很熟悉,有点卡在一件事情上。 我想知道如何在第二行创建第二个JTextfield。 它们看起来在同一行上。第二行的Java Swing多输入第二个JTextField
import javax.swing.*;
public class JOptionPaneMultiInput {
public static void main(String[] args) {
JTextField xField = new JTextField(5);
JTextField yField = new JTextField(5);
JPanel myPanel = new JPanel();
myPanel.add(new JLabel("x:"));
myPanel.add(xField);
myPanel.add(new JLabel("y:"));
myPanel.add(yField);
int result = JOptionPane.showConfirmDialog(null, myPanel,
"Please Enter X and Y Values", JOptionPane.OK_CANCEL_OPTION);
}
}
首先,您应该学习java中的布局管理器https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html – Satya
提供ASCII图形或简单的GUI *布局图。看起来你想要一排标签/值对。这可以使用'GridBagLayout'或'GroupLayout'实现最好 - 这是一个[使用'GroupLayout']的示例(http://stackoverflow.com/a/21659516/418556)。虽然我也使用嵌套面板创建了效果(在BorderLayout中有两个'GridLayout'面板).. –
BTW - 'JTextField xField = new JTextField(5);'考虑使用带有'SpinnerNumberModel'的'JSpinner'相反 - 用户更喜欢选择数字。 –