Подтвердить что ты не робот

Как сделать JButton простым плоским стилем?

Какой самый простой способ заставить JButton показывать только цвет фона? Мне не нужны никакие другие эффекты, такие как границы, 3D-вид или подсветка.

Спасибо заранее.

4b9b3361

Ответ 1

Я не знаю, пропустил ли я момент... Но я обычно делаю это так:

button.setBorderPainted(false);
button.setFocusPainted(false);
button.setContentAreaFilled(false);

Ответ 2

Просто установите цвета и границу:

private static JButton createSimpleButton(String text) {
  JButton button = new JButton(text);
  button.setForeground(Color.BLACK);
  button.setBackground(Color.WHITE);
  Border line = new LineBorder(Color.BLACK);
  Border margin = new EmptyBorder(5, 15, 5, 15);
  Border compound = new CompoundBorder(line, margin);
  button.setBorder(compound);
  return button;
}

Используйте setOpaque(false);, чтобы сделать фон прозрачным.

Ответ 3

Как насчет

yourButton.setBorder(null);

?

Ответ 4

Вместо этого вы можете использовать JLabel с MouseListener... если вы не связаны с JButton или ActionListener каким-то образом.

Ответ 5

Во-первых, установите свой внешний вид на что-то крутое, как "металл".

try
{
    for (UIManager.LookAndFeelInfo lnf : 
        UIManager.getInstalledLookAndFeels()) {
        if ("Metal".equals(lnf.getName())) {
            UIManager.setLookAndFeel(lnf.getClassName());
            break;
        }
    }
} catch (Exception e) { /* Lazy handling this >.> */ }

Затем сделайте что-то вроде этого:

my_jbutton.setBackground(new Color(240,240,241);

Если цвет вашей кнопки в точности соответствует цвету управления поворотным (240,240,240), окна будут применять стиль кнопки в стиле кнопки к кнопке, в противном случае кнопка принимает простой плоский стиль.