【问题标题】:Wrap element java swing包裹元素java swing
【发布时间】:2016-04-06 15:02:25
【问题描述】:

我有一个示例,其中面板(带有标题、说明和按钮)彼此相邻放置

这是代码

 public class Example extends JFrame {

    Example() {

        setLayout(new FlowLayout());
        for (int i = 0; i < 4; i++)
            add(new MyPanel());

        setDefaultCloseOperation(EXIT_ON_CLOSE);
        pack();
        setVisible(true);
    }

    class MyPanel extends JPanel {

        MyPanel() {

            setLayout(new BorderLayout());
            add(new JLabel("title", SwingConstants.CENTER), BorderLayout.PAGE_START);
            add(new JLabel("<html>WWWWWW WWWWWWW<p>WWWWWWWWW<p>RRRRRRR RRRRR RRRRRRR"));
            add(new JButton("Details"), BorderLayout.PAGE_END);
        }
    }

    public static void main(String[] args) {

        SwingUtilities.invokeLater(() -> new Example());
    }
}

每次如何包装面板?

【问题讨论】:

  • “每次如何包装?” 到底包装什么?标题+细节+按钮组件?标签中的文字?还有什么?
  • ... 并以什么方式换行?以图形方式带有边框?或者通过某种包装类以编程方式?请为我们澄清您的问题和问题。
  • @HovercraftFullOfEels 查看问题中的图片
  • 只需使用不同的布局管理器——请仔细阅读它们。用于可变行数和 1 列的 new GridLayout(0, 1) 将起作用。
  • Java Vertical Layout?的可能重复

标签: java swing


【解决方案1】:

只需使用不同的布局管理器——请仔细阅读它们。用于可变行数和 1 列的 new GridLayout(0, 1) 将起作用。还可以考虑使用使用约束 BoxLayout.PAGE_AXIS 的 BoxLayout。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-29
    相关资源
    最近更新 更多