我正在尝试将徽标与导航面板的左侧对齐,但是由于某种原因,它无法正常工作。下面是显示其外观的图像:
但是当我移除导航按钮时,徽标看起来像这样向左对齐:
导航徽标代码
public class navLogo {
public void addLogo() {
try {
BufferedImage myLogo = ImageIO.read(new File("Images/Logo.png"));
JLabel logoLabel = new JLabel(new ImageIcon(myLogo));
new navPanel().getNavPanel().add(logoLabel);
} catch(IOException ex) {
ex.printStackTrace();
}
}
}
导航按钮的代码
public class navBtns {
private ArrayList<JButton> navBtnList = new ArrayList<>();
public void setUpNavBtns() {
makeNavBtns();
customizeNavBtns();
}
void makeNavBtns() {
navBtnList.add(0, new JButton("Mouse"));
navBtnList.add(1, new JButton("Visuals"));
navBtnList.add(2, new JButton("Desktop"));
navBtnList.add(3, new JButton("Privacy"));
navBtnList.add(4, new JButton("Encryption"));
navBtnList.add(5, new JButton("Optimization"));
navBtnList.add(6, new JButton("Settings"));
}
void customizeNavBtns() {
for (JButton jButton : navBtnList) {
jButton.setFont(new Font("Times New Roman", Font.PLAIN, 20));
jButton.setAlignmentX(Component.CENTER_ALIGNMENT);
jButton.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
jButton.setFocusPainted(false);
jButton.setBorderPainted(false);
jButton.setForeground(Color.WHITE);
jButton.setBackground(Color.WHITE);
jButton.setOpaque(false);
new navPanel().getNavPanel().add(jButton);
}
}
}
良好的回答将不胜感激。感谢您的帮助。
从navBtns.java删除以下行后,它可以工作:
jButton.setAlignmentX(Component.CENTER_ALIGNMENT);