我正在使用Substance和Swing,并且了解到将x数量的菜单和子菜单项添加到菜单中后,Substance会自动继续,并在菜单栏上为您添加放大镜图标和搜索栏。这对于在菜单中搜索以更快地找到项目很有用,但是不幸的是我不希望这样做,因为我没有设计用户界面来容纳它。有什么办法可以删除这个?
public class SubstanceMenu {
public JMenuBar createMenuBar() {
JMenuBar menuBar = new JMenuBar();
for (int i = 0; i < 4; i++) {
JMenu menu = new JMenu("A Menu");
JMenu subMenu = new JMenu("A submenu");
for (int j = 0; j < 5; j++) {
menu.add("Menu item");
subMenu.add("Sub Menu Item");
}
menu.add(subMenu);
menuBar.add(menu);
}
return menuBar;
}
private static void createAndShowGUI() {
JFrame frame = new JFrame("MenuSelectionManagerDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
SubstanceMenu demo = new SubstanceMenu();
frame.setJMenuBar(demo.createMenuBar());
frame.setSize(450, 260);
frame.setVisible(true);
}
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(
"org.jvnet.substance.skin.SubstanceMagmaLookAndFeel");
SwingUtilities.invokeLater(() -> createAndShowGUI());
} catch (Exception e) {
e.printStackTrace();
}
}
}
如何删除图标/栏?
最佳答案
这里是物质的开发者。
看来您使用的是Substance的旧版本(基于外观类的“ org.jvnet”包名称)。最新版本的Substance(现在是Radiance的一部分)可从https://github.com/kirill-grouchnikov/radiance获得,并且除非在应用程序代码中明确配置,否则不添加菜单搜索小部件。