Match theme color in MenuBarCustomizer?
Posted: Fri Nov 22, 2019 3:21 am
Hi,
I know very little Swing. How can I match the theme color when adding a menu and menu item? My latest attempt:
I also tried menuBar.getBackground()/getForeground() instead of UIManager.get.
Kendall
I know very little Swing. How can I match the theme color when adding a menu and menu item? My latest attempt:
Code: Select all
Color bg = (Color) UIManager.get("MenuBar.background");
Color fg = (Color) UIManager.get("MenuBar.foreground");
UIManager.put("MenuItem.background", bg);
UIManager.put("MenuItem.foreground", fg);
UIManager.put("Menu.background", bg);
UIManager.put("Menu.foreground", fg);
JMenu menu = new JMenu("Some");
JMenuItem item = new JMenuItem(createSyncAction(...));
item.setSelected(false);
item.setMnemonic(KeyEvent.VK_ALT | KeyEvent.VK_S);
item.setBackground(bg);
item.setForeground(fg);
item.setOpaque(true);
menu.add(item);
menu.setSelected(false);
menu.setMnemonic(KeyEvent.VK_ALT | KeyEvent.VK_A);
menu.setBackground(bg);
menu.setForeground(fg);
menu.setOpaque(true);
menuBar.add(menu, menuBar.getMenuCount() - 1);
Kendall