有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何链接JLabel和JSpinner以调整大小

我想有一个可调整大小的应用程序,我正在构建一个嵌套面板GUI。在一个面板中,我需要微调器和标签。我想把标签放在旋转器的左边。在考虑调整大小问题时,实现这一点的最佳方法是什么:

一,。我可以创建一个垂直的BoxLayout面板,并添加x个子面板,每个子面板都在其中 包含标签和微调器:

JPanel ControlPanel = new JPanel();
ControlPanel.setLayout(new BoxLayout(ControlPanel, BoxLayout.Y_AXIS));
JPanel LabelledSpinner = new JPanel();
LabelledSpinner .setLayout(new BoxLayout(LabelledSpinner , BoxLayout.X_AXIS));
JLabel lab1 = new JLabel("Label1");
JSpinner spin1 = new JSpinner();
spin1.setModel(new SpinnerNumberModel(300, 10, 3000, 10));
LabelledSpinner .add(lab1);
LabelledSpinner .add(spin1);
ControlPanel.add(LabelledSpinner );

或者

二,。我可以创建一个GridBagLayout面板,包含2列和x行。然后每一行都会有一个标签和一个微调器

哪一个最好

或者这个“常见”的标签问题有更简单的解决方案吗


共 (1) 个答案

  1. # 1 楼答案

    1. 使用布局管理器方法肯定更好

    2. 有一个JDK Swing教程,介绍如何使用SprintLayoutManager构建类似表单的布局 http://docs.oracle.com/javase/tutorial/uiswing/layout/spring.html

    从标准布局管理器开始。当你与不同的布局经理合作时,你最终会找到一个最适合你需求的组合

    另一种选择是使用GroupLayout,它可以帮助向表单UI添加稍微复杂一些的组件http://docs.oracle.com/javase/tutorial/uiswing/layout/groupExample.html

    希望有帮助