我正在创建一个Java swing应用程序,并且很难很好地定位元素。
我将如何使输入框和组合框的高度设置为30px?另外,我将如何使所有文本的右边缘垂直对齐,而所有输入框的左边缘垂直对齐?
我有一个主JPanel,它是BoxLayout.Y_AXIS,然后在主JPanel上有6个JPanel。这6个JPanels设置为BorderLayout,正如您所看到的,我已经将WEST用于JLabel,并将EAST用于输入字段。
这是我如何创建位于主面板顶部的第一个面板的片段。
private JPanel getProtocolPanel() {
protocolNumber.setBorder(BorderFactory.createLineBorder(Color.GREEN));
protocolNumberInput.setBorder(BorderFactory.createLineBorder(Color.CYAN));
protocolNumber.setVerticalAlignment(SwingConstants.TOP);
protocolPanel = new JPanel();
protocolPanel.setLayout(new BorderLayout());
protocolPanel.setBorder(BorderFactory.createLineBorder(Color.RED));
protocolPanel.add(protocolNumber, BorderLayout.WEST);
protocolPanel.add(protocolNumberInput, BorderLayout.EAST);
return protocolPanel;
}
让我知道是否有更好的方法来进行这种布局。
谢谢。
最佳答案
您要么必须将布局相互嵌套,要么要使用更复杂的布局(Spring,GridBag,Mig),或者同时使用两者才能获得理想的效果。