【问题标题】:How can I put a horizontal line between vertically ordered elements?如何在垂直排序的元素之间放置一条水平线?
【发布时间】:2010-04-02 15:43:02
【问题描述】:

我有一组垂直排序的元素。它们使用以下代码显示:

JPanel myPanel = new JPanel();
myPanel.setLayout(new BoxLayout(myPanel, BoxLayout.Y_AXIS));
JButton button = new JButton("My Button");
JLabel label = new JLabel("My label!!!!!!!!!!!");
myPanel.add(button);
myPanel.add(label);

我想在我的元素之间放置一条水平线(类似于 html 中的 <hr>)。有人知道怎么做吗?

【问题讨论】:

  • 又一次在 Swing 教程中找到了答案。这家伙一直拒绝阅读教程。看看他在这篇帖子中的评论:stackoverflow.com/questions/2561305/…,他说他的时间比我们的更重要,这就是他懒得阅读教程的原因。令我惊讶的是,他仍然得到用勺子喂给他的答案。

标签: java user-interface swing line


【解决方案1】:

使用 JSeparator。看看这个tutorial就可以了。

但为了快速回答,只需使用以下代码:

myPanel.add(button);
myPanel.add(new JSeparator());
myPanel.add(label);

【讨论】:

  • 我提供了一个公正的答案,就像我对其他试图在这里学习的人一样。是的,您应该尝试使用 RTFM。但如果你不知道具体要寻找什么,或者没有时间继续阅读,最好来 SO 学习。只是我的看法。
  • 我上面的评论看起来不合适,因为我回复的人删除了他们的评论哈哈。
【解决方案2】:

创建一个 JSeparator 并将其添加到按钮和标签之间。

【讨论】:

  • 这可行,但会将以下添加的元素推到框布局的底部。如何避免这种情况?