我的代码中有
带有LEFT FlowLayout的jPanel。 它包含各种组件。见img:
我想要实施的内容: 我试图将最后一个组件粘贴在其面板容器的右边缘。见img:
我试过了:
在我的最后一个组件之前添加一个Box.createHorizontalGlue,但它没有按预期工作。
守则:
代码是专门为问题创建的,并且反映了原始代码逻辑:
public class TheMotherPuckerGlue {
public static void main(String [] a) {
final JFrame frame = new JFrame();
frame.setSize(500, 90);
frame.setTitle("myCode");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new BorderLayout());
JPanel motherPucker = new JPanel(new FlowLayout(FlowLayout.LEFT));
JPanel panel1 = new JPanel();
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
panel1.setBackground(Color.green);
panel2.setBackground(Color.yellow);
panel3.setBackground(Color.red);
panel1.setPreferredSize(new Dimension(100,40));
panel2.setPreferredSize(new Dimension(100,40));
panel3.setPreferredSize(new Dimension(100,40));
motherPucker.add(panel1);
motherPucker.add(panel2);
// motherPucker.add(Box.createHorizontalGlue());
motherPucker.add(panel3);
motherPucker.setBackground(Color.white);
frame.add(motherPucker,BorderLayout.CENTER);
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
frame.setVisible(true);
}
});
}
}
感谢您的任何建议,请您离开! :d