我有JButton,它有一個ImageIcon和一些文本。 我想有透明的背景,沒有邊框,但也想有一些填充。Jbutton帶填充的隱形邊框
這是我曾嘗試:
Jbutton button = new JButton();
//Add image to the button
ImageIcon img= new ImageIcon(imgUrl);
button.setIcon(img);
//make button transparent
button.setBackground(new Color(255,255,255,0));
//Remove border
button.setBorderPainted(false);
button.setContentAreaFilled(false);
button.setFocusPainted(false);
//add padding
button.setBorder(BorderFactory.createEmptyBorder(5,10,5,50));
我仍然看到灰色邊框的邊框。 當我做button.setBorder(null),灰色邊框線消失,但我無法添加填充。
如果有人可以請指導我我做錯了什麼。我對揮杆很陌生,嘗試過不同的答案,但他們都沒有成功。
謝謝。
'button.setBackground(新顏色(255,255,255,0));'是不是你如何使組件透明,而是,你需要設置'setOpaque'並傳遞它false – MadProgrammer
我也看看['JButton#setMargin'](https://docs.oracle.com/javase /8/docs/api/javax/swing/AbstractButton.html#setMargin-java.awt.Insets-)添加填充 – MadProgrammer
@MadPro語法我試過button.setMargin(新的Insets(10,10,10,10)),但沒有使用border設置爲null。還有什麼我可以嘗試嗎? – LearningToCode