[英]Java swing jpanel dimension
JLabel titleLabel = new JLabel(title, SwingConstants.CENTER);
titleLabel.setForeground(Color.DARK_GRAY);
titleLabel.setFont(new Font("Comic Sans MS", Font.PLAIN, 15));
add(titleLabel, BorderLayout.PAGE_START);
JLabel descLabel = new JLabel("<html>description");
descLabel.setForeground(Color.GRAY);
descLabel.setFont(new Font("Comic Sans MS", Font.PLAIN, 13));
add(descLabel, BorderLayout.PAGE_START);
JLabel picLabel = new JLabel(new ImageIcon(Home.class.getResource("/icon/img.jpg")));
picLabel.setIconTextGap(-310);
picLabel.setOpaque(true);
picLabel.setLayout(null);
add(picLabel);
JPanel buttonPanel = new JPanel();
buttonPanel.setBorder(new LineBorder(Color.BLACK, 1, true));
JButton btnDetails = new JButton("Dettagli");
JButton btnDetails2 = new JButton("Modifica");
buttonPanel.add(btnDetails);
buttonPanel.add(btnDetails2);
add(buttonPanel);
我想更改面板的尺寸(请参见图像)并将其与图像对齐。
有什么建议吗?
将主面板的布局更改为使用BorderLayout
。
然后添加要添加的picLabel
add(picLabel, BorderLayout.CENTER)
和您的buttonPanel作为add(buttonPanel, BorderLayout.SOUTH)
,您应该会获得更好的布局。
打包对话框/框架也有帮助。
您不能将两个标签添加到BorderLayout中的相同位置。 您的标签descLabel
将替换您的titleLabel
您可以像按钮一样进行操作:创建另一个面板,垂直添加两个标签,然后使用BorderLayout.NORTH
(或PAGE_START)将其添加到主面板中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.