【问题标题】:GUI auto layout using Swing or Java-FX使用 Swing 或 Java-FX 的 GUI 自动布局
【发布时间】:2014-08-28 14:25:14
【问题描述】:

我正在考虑使用 Java Sswing 构建 GUI,因为 RedHat 5.x 不支持 Java-FX,这意味着我必须使用更通用的东西。有没有办法可以在 Swing 中进行自动布局?例如,顶部菜单栏和每个栏的下拉项目由服务器提供,而不是在客户端中硬编码。如果 Swing 没有,Java-FX 有这个功能吗?

【问题讨论】:

  • “例如,顶部菜单栏和每个栏的下拉项由服务器提供..” 什么'服务器'?
  • 您使用术语“自动布局”。你指的是IOS“自动布局”吗?正如 UI 框架所应具备的,Swing 和 JavaFX 都具有布局管理器的概念。对于 Swing,请参阅 here。还有 FormLaout 和 MigLayout。一切都取决于你需要什么。而且它们都不需要服务器(?)。

标签: java swing javafx


【解决方案1】:

我知道您可以在 JavaFX 和 Swing 中以类似的努力做到这一点。

JavaFX(考虑到 SQL 服务器)您可以随时添加元素,下面是填充 ComboBox 的示例,但它与MenuButton(您只需要先创建 MenuItems)。

        Statement statement = connection.createStatement();
        ResultSet results = statement.executeQuery("SELECT * FROM test_table");
        ComboBox cb = new ComboBox();
        while(results.next()){
            cb.getItems().add(results.getString("test_col"));
        }

摇摆

        Statement statement = connection.createStatement();
        ResultSet results = statement.executeQuery("SELECT * FROM test_table");
        JPanel buttonPanel = new JPanel();
        buttonPanel.setLayout(new GridLayout(2,2));
        while(results.next()){
            buttonPanel.add(new JButton(results.getString("test_col")));
        }
        buttonPanel.setPreferredSize(new Dimension(300, 400));

【讨论】:

    猜你喜欢
    • 2018-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 2011-09-12
    相关资源
    最近更新 更多