我有一个关于将背景颜色设置为JButton
的问题。
似乎此方法仅更改边框的颜色。这是区别(左边是jButton
):
有没有办法让背景变得相同?
我在Windows 8上使用setLookAndFeel
。
答案 0 :(得分:15)
这适用于Metal(默认)或Windows PLAF。
import java.awt.*;
import javax.swing.*;
class ColoredButton {
public static void main(String[] args) {
Runnable r = new Runnable() {
@Override
public void run() {
try {
UIManager.setLookAndFeel(
UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
e.printStackTrace();
}
JButton b1 = new JButton("Button 1");
b1.setBackground(Color.RED);
// these next two lines do the magic..
b1.setContentAreaFilled(false);
b1.setOpaque(true);
JOptionPane.showMessageDialog(null, b1);
}
};
SwingUtilities.invokeLater(r);
}
}
答案 1 :(得分:0)
在按钮上使用.setOpaque(true)。