我有一个JComboBox,并希望在元素列表中有一个分隔符.我如何用Java做到这一点?
一个方便的示例场景是为字体系列选择制作一个组合框; 类似于Word和Excel中的font-family-selection-control.在这种情况下,我想在顶部显示最常用的字体,然后是分隔符,最后按字母顺序显示分隔符下面的所有字体系列.
任何人都可以帮助我如何做到这一点,或者这在Java中是不可能的?
我正在尝试使用Swing小部件在面板中放置两个按钮.在NetBeans IDE中,我的JSeparator
border
属性设置(No border)
在属性窗格中.
然而,出现了一条线.这不是我对分隔符对象的期望.难道我做错了什么?来自Delphi和C#WinForms的背景,我希望在Swing中找到一些奇怪的东西.但是,如何在面板中的两个按钮之间创建特定尺寸的透明间隙?我是否必须使用布局并避免使用JSeparator
?
更新:使用布局并且没有任何分隔符对象来执行此操作应该是微不足道的.那你怎么做的?我正在研究NetBeans布局定制器和属性检查器,但没有办法做到这一点.(答案:带有插图的布局,而不是分隔符.)
如何在任务栏的应用程序的弹出菜单中添加垂直分隔符?
tray = SystemTray.getSystemTray();
openMenuItem = new MenuItem("Open P");
stopKLMenuItem = new MenuItem("Stop");
exitMenuItem = new MenuItem("exit");
menu.add(exitMenuItem);
menu.add(stopKLMenuItem);
menu.addSeparator(); // adds a horizontal separator
menu.add(openMenuItem);
trayIcon = new TrayIcon(image,"P",menu);
Run Code Online (Sandbox Code Playgroud)
该语句menu.addSeparator()
添加了一个水平分隔符.我还想要一个垂直分隔符,如:
我该怎么做呢 ?
问题出在标题中.
我目前正在做类似的事情:
jSperator = new JSeparator();
jSeparator1.setForeground(new java.awt.Color(255, 51, 51));
Run Code Online (Sandbox Code Playgroud)
但分隔符保持默认颜色,如212,212,212.
我有这个代码:
JPanel jpMainExample = new JPanel(new java.awt.FlowLayout(java.awt.FlowLayout.LEFT));
jpMainExample.add(new JLabel("JLabel"));
jpMainExample.add(new JTextField("JTextField"));
jpMainExample.add(new JSeparator(JSeparator.VERTICAL));
jpMainExample.add(new JRadioButton("JRadioButton"));
jpMainExample.add(new JSeparator(SwingConstants.VERTICAL));
jpMainExample.add(new JComboBox<>(new String[] {"JComboBox"}));
jpOUT.add(jpMainExample);
Run Code Online (Sandbox Code Playgroud)
但是,我看不到分隔符.
怎么了?
我开发了一个框架,我使用GridBagLayout来安排12X12的文本字段.即框架上共有144个文本字段.现在我想在每个3列和3行之后用彩色线区分这些文本字段,如下图所示.我试过很多方面,但我找不到解决办法.请建议.下面是我的代码的一部分.提前致谢.
1 2 3 | 4 5 6 | 7 8 9 | 10 11 12
| | |
1 2 3 | 4 5 6 | 7 8 9 | 10 11 12
| | |
1 2 3 | 4 5 6 | 7 8 9 | 10 11 12
-------------------------------
1 2 3 | 4 5 6 | 7 8 9 | 10 11 12
| | |
1 2 3 | 4 5 6 | 7 …
Run Code Online (Sandbox Code Playgroud) 当我想插入一个带有JSeparator for Java Swing应用程序的分隔符时,我遇到了问题.事实上,当我在Mac上运行我的程序时,我遇到了这个问题,我在Windows或Linux上没有它.分隔符放置不正确,文本是删除线.有谁知道为什么?
我的代码:
JMenuItem fileItem = new JMenuItem("Close");
KeyStroke ...
fileItem.add(new JSeparator(JSeparator.HORIZONTAL),BorderLayout.LINE_START);
Run Code Online (Sandbox Code Playgroud)
截图: