Я не могу заставить работать простые кнопки переключения внутри JToolbar.
В этом примере программа добавляет три кнопки-переключателя в группе кнопок на панель инструментов JToolbar. В macOS текущая кнопка переключения видна только в том случае, если приложение теряет фокус.
![focused](https://i.stack.imgur.com/3iGkw.png)
![no focus](https://i.stack.imgur.com/pw7Di.png)
import java.awt.BorderLayout;
import javax.swing.*;
public class Foo extends JFrame {
public Foo() {
setTitle("Foo");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new BorderLayout());
JToolBar toolbar = new JToolBar();
toolbar.setFloatable(false);
add(toolbar, BorderLayout.NORTH);
JToggleButton well = new JToggleButton("Well Done");
JToggleButton medium = new JToggleButton("Medium");
JToggleButton rare = new JToggleButton("Rare");
toolbar.add(well);
toolbar.add(medium);
toolbar.add(rare);
ButtonGroup group = new ButtonGroup();
group.add(well);
group.add(medium);
group.add(rare);
setSize(400, 300);
setLocationRelativeTo(null);
}
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (UnsupportedLookAndFeelException e) {
} catch (ClassNotFoundException e) {
} catch (InstantiationException e) {
} catch (IllegalAccessException e) {
}
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new Foo().setVisible(true);
}
});
}
}
Есть ли известная проблема с таким использованием кнопок переключения в macOS? Есть обходные пути?
Это с macOS версии 10.14.5, Oracle / OpenJDK JRE / JDK 1.8 и 11.