【问题标题】:I can't see Swing JSeparator我看不到 Swing JSeparator
【发布时间】:2016-07-11 02:07:03
【问题描述】:

我有这个代码:

  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);

但是,我看不到分隔符。

怎么了?

【问题讨论】:

标签: java swing jpanel jseparator


【解决方案1】:

分隔符的preferredSize是(2, 0)。 FlowLayout 尊重首选大小。由于高度为 0,所以没有可绘制的内容。

因此您需要使用不同的布局管理器来调整组件的大小以垂直填充可用空间。

查看 How to Use Separators 上的 Swing 教程中的部分以获取工作示例。它展示了如何使用BoxLayout

【讨论】:

  • 也可以使用 setMinimumSize() 设置分隔符的最小尺寸。这至少适用于 FlowLayout。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-06-22
  • 2020-12-13
  • 2011-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-26
相关资源
最近更新 更多