Java JButton 的两半 (+/-)
Two halves of Java JButton (+/-)
对不起,我什至不知道如何表达这个问题,因为我没有术语。基本上,我想知道如何创建这个:
或者这个:
在 Java 中,多个 JButton 占用一个 space,它们之间有一条细线。任何人都可以给我一些方向吗?我自己搜索了一段时间,我想不通。谢谢!
你想要的没有直接支持。
您可以使用 JPanel
和水平 BoxLayout
。
然后使用 setBorder(null)
从每个按钮中删除 Border
。
然后您可以将 Border
添加到面板,这样看起来按钮共享相同的 Border
。
然后您可以在每个按钮之间添加一个 JSeparator
。
可以创建一组按 JToolBar
分组的按钮(或其他小部件)。有setBorderPainted()
、setFloatable()
等方法来自定义工具栏属性。这是一个基本示例:
import javax.swing.*;
public class MyApp {
public static void main(String[] args) {
displayGui();
}
private static void displayGui() {
JToolBar toolBar = new JToolBar();
JButton saveButton = new JButton("Save");
JButton deleteButton = new JButton("Delete");
toolBar.add(saveButton);
toolBar.add(deleteButton);
JFrame frame = new JFrame("My App");
frame.add(toolBar);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(100, 100);
frame.setLocation(100, 100);
frame.setVisible(true);
}
}
编辑:
工具栏示例(仅图像):
对不起,我什至不知道如何表达这个问题,因为我没有术语。基本上,我想知道如何创建这个:
或者这个:
在 Java 中,多个 JButton 占用一个 space,它们之间有一条细线。任何人都可以给我一些方向吗?我自己搜索了一段时间,我想不通。谢谢!
你想要的没有直接支持。
您可以使用 JPanel
和水平 BoxLayout
。
然后使用 setBorder(null)
从每个按钮中删除 Border
。
然后您可以将 Border
添加到面板,这样看起来按钮共享相同的 Border
。
然后您可以在每个按钮之间添加一个 JSeparator
。
可以创建一组按 JToolBar
分组的按钮(或其他小部件)。有setBorderPainted()
、setFloatable()
等方法来自定义工具栏属性。这是一个基本示例:
import javax.swing.*;
public class MyApp {
public static void main(String[] args) {
displayGui();
}
private static void displayGui() {
JToolBar toolBar = new JToolBar();
JButton saveButton = new JButton("Save");
JButton deleteButton = new JButton("Delete");
toolBar.add(saveButton);
toolBar.add(deleteButton);
JFrame frame = new JFrame("My App");
frame.add(toolBar);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(100, 100);
frame.setLocation(100, 100);
frame.setVisible(true);
}
}
编辑: 工具栏示例(仅图像):