Java 下拉列表的布局&;内容

Java 下拉列表的布局&;内容,java,swing,awt,layout-manager,Java,Swing,Awt,Layout Manager,我有一扇窗。在顶部,我有一个基于下拉选择值的下拉列表,选择特定内容应显示 使用哪种布局最好?您的问题表明您不太熟悉swing,因此我建议使用默认布局。您的问题表明您不太熟悉swing,因此我建议使用默认布局。swing窗口应具有边框布局。对于North约束,您应该将组合框包装到一个简单的JPanel中,它有一个FlowLayout。根据组合框的更改,您将更改Swing窗口的中心。请参阅下面的示例代码: 在组合框操作中需要此代码: button = new JButton("Button 2 (C

我有一扇窗。在顶部,我有一个基于下拉选择值的下拉列表,选择特定内容应显示


使用哪种布局最好?

您的问题表明您不太熟悉swing,因此我建议使用默认布局。

您的问题表明您不太熟悉swing,因此我建议使用默认布局。

swing窗口应具有边框布局。对于North约束,您应该将组合框包装到一个简单的JPanel中,它有一个FlowLayout。根据组合框的更改,您将更改Swing窗口的中心。请参阅下面的示例代码:

在组合框操作中需要此代码:

button = new JButton("Button 2 (CENTER)");
button.setPreferredSize(new Dimension(200, 100));
pane.add(button, BorderLayout.CENTER);

希望有帮助。

Swing窗口应该有边框布局。对于North约束,您应该将组合框包装到一个简单的JPanel中,它有一个FlowLayout。根据组合框的更改,您将更改Swing窗口的中心。请参阅下面的示例代码:

在组合框操作中需要此代码:

button = new JButton("Button 2 (CENTER)");
button.setPreferredSize(new Dimension(200, 100));
pane.add(button, BorderLayout.CENTER);

我希望有帮助。

也许这会有帮助:也许这会有帮助:
按钮。setPreferredSize(新维度(200100))这样做的预期结果是什么?我们很少设置组件的(首选/最大/最小)尺寸。除此之外,这个答案值得a+1。它肯定比推荐FlowLayout的人好。1+警告:setPrefSize(总是不正确)可能会得到-1-请编辑您的答案并删除该行:-@HovercraftFullOfEels:所选尺寸可能适合特定平台/L&F,但
FlowLayout
BorderLayout。NORTH
肯定会使用首选尺寸。此外,这个答案引用了
JButton
,而(有些模糊)问题提到了下拉列表,可能是
JConboBox
JList
。我正在等待Mathsoft的回访,然后再进行否决投票。
button.setPreferredSize(新维度(200100))这样做的预期结果是什么?我们很少设置组件的(首选/最大/最小)尺寸。除此之外,这个答案值得a+1。它肯定比推荐FlowLayout的人好。1+警告:setPrefSize(总是不正确)可能会得到-1-请编辑您的答案并删除该行:-@HovercraftFullOfEels:所选尺寸可能适合特定平台/L&F,但
FlowLayout
BorderLayout。NORTH
肯定会使用首选尺寸。此外,这个答案引用了
JButton
,而(有些模糊)问题提到了下拉列表,可能是
JConboBox
JList
。我正在等待Mathsoft的回访,然后再进行投票。这是非常主观的,我不会深入讨论。然而,我认为最好的学习方法是查阅Java教程。@Sujay我同意你的观点:)@Sujay:我同意并敦促进行实验。也可以考虑<代码> JTooBar < /COD>,如图所示;它在内部使用了一个
BoxLayout
,但它也可以与
FlowLayout
@AndrewThompson一起工作。不,它不是:-)一如既往-工具栏或非工具栏-解决方案是一个合适的布局管理器。那个淘气的(又一次)灵气无条件地取代了它。在协作的另一端,组合大小提示是。。。废话,所以需要通过子类化来修复。@AndrewThompson可能:-)只是想澄清一下:我认为单行文本组件(加上组合)的错误行为是,它们不会将其最大高度限制为其首选项。至于其宽度,我看不出无界报告的错误有多大:LayoutManager的任务是根据上下文限制它(又名:开发者需求)。BoxLayout的一个优点是,它确实尊重max,如果它允许约束保持在pref而不是拉伸,它可能会更好,这将使它进入一个比设计更高级的管理者的领域:-)这是非常主观的,我不会深入探讨它。然而,我认为最好的学习方法是查阅Java教程。@Sujay我同意你的观点:)@Sujay:我同意并敦促进行实验。也可以考虑<代码> JTooBar < /COD>,如图所示;它在内部使用了一个
BoxLayout
,但它也可以与
FlowLayout
@AndrewThompson一起工作。不,它不是:-)一如既往-工具栏或非工具栏-解决方案是一个合适的布局管理器。那个淘气的(又一次)灵气无条件地取代了它。在协作的另一端,组合大小提示是。。。废话,所以需要通过子类化来修复。@AndrewThompson可能:-)只是想澄清一下:我认为单行文本组件(加上组合)的错误行为是,它们不会将其最大高度限制为其首选项。至于其宽度,我看不出无界报告的错误有多大:LayoutManager的任务是根据上下文限制它(又名:开发者需求)。BoxLayout的一个优点是它确实尊重max,如果它允许约束保持在pref而不是拉伸,那么它可能会更好,这将使它进入一个比设计时更高级的管理器领域:-)