代码之家  ›  专栏  ›  技术社区  ›  Warren P

在对象之间放置空格的最佳方法是什么?Swing jsepator对象可以是不可见的分隔符吗?

  •  11
  • Warren P  · 技术社区  · 14 年前

    我尝试使用Swing小部件在面板中放置两个按钮。在NetBeans IDE中,我的 JSeparator border 属性设置为 (No border) 在“属性”窗格中。

    建立分隔线 ?

    更新: 使用布局和不使用任何分隔符对象来完成这项工作应该很简单。你是怎么做到的?我正在研究NetBeans布局定制器和属性检查器,但没有找到方法(答:带有插入的布局,而不是分隔符。)

    4 回复  |  直到 8 年前
        1
  •  24
  •   Adamski    14 年前

    您应该看看 Box

    JPanel pnl = new JPanel(new FlowLayout());
    pnl.add(new JButton("Hello"));
    pnl.add(Box.createHorizontalStrut(10)); // Fixed width invisible separator.
    pnl.add(new JButton("Goodbye");
    

    这比创建/配置 JPanel 你自己有适当的最小,最大和首选尺寸。

        2
  •  4
  •   jjnguy Julien Chastang    14 年前

    JSeparator 是组件之间的可见分隔符。

    javadoc for JSeparator :

    jsepator提供了一个用于实现分隔线的通用组件——最常用作菜单项之间的分隔线,将菜单项拆分为逻辑组。

    如果你想把一个组件放在两个不可见的组件之间,只需要使用 JPanel 相反。然后用 setPreferedSize() setMin/MaxSize()

        3
  •  2
  •   Anton    14 年前

    你不需要jsepator。大多数布局允许您设置组件之间的间距(空间)。Box类特别有用。

        4
  •  1
  •   SubJunk    9 年前

    使用高度值为1的addSeparator使其对我不可见,例如:

    MyJToolBar.addSeparator(new Dimension(20, 1));
    
    推荐文章