JPanel 填充所有 JFrame 空间

2023-12-04

我编写了这段代码来显示面板中的一组颜色:

import java.util.ArrayList;
import java.util.List;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Palette {

    public static void main(String[] args) {
        JFrame frame = new JFrame("Panel");

        palette.add(new Color(255, 0, 0));
        palette.add(new Color(0, 255, 0));
        palette.add(new Color(0, 0, 255));

        int width = 100;
        int height = 250;
        int x = 0;
        for (Color color : palette) {
            JPanel panel = new JPanel();

            panel.setSize(width, height);
            panel.setLocation(x, 750);
            panel.setBackground(new java.awt.Color(color.getColor()));

            frame.add(panel);

            x+=width;
        }
        frame.pack();

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(1000, 1000);
        frame.setVisible(true);
    }

}

第两个面板位于正确的位置且尺寸正确。但最后一个将所有框架填充为蓝色。怎么了?


您必须使用适当的布局管理器。 JFrame 默认情况下有一个BorderLayout.

查看 LayoutManager 的教程:

http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JPanel 填充所有 JFrame 空间 的相关文章

随机推荐

  • 使用 JSON.NET 返回 ActionResult [重复]

    这个问题在这里已经有答案了 我正在尝试编写一个 C 方法来序列化模型并返回 JSON 结果 这是我的代码 public ActionResult Read DataSourceRequest DataSourceRequest reques
  • 如何将 JSONArray 转换为 ListView?

    我有一个执行以下操作的代码 通过 HttpClient 连接到 Web 服务到 PHP 文件 返回 SQL 查询的结果 返回格式为jArray JSONArray for int i 0 i lt jArray length i json
  • 如何从动态创建的(Java 中)layer-list / LayerDrawable 中获取 Android 资源 ID?

    此问题 答案帖子中的 解决方案 2 动态 在android中叠加两个图像以设置imageview 与我想要做的非常接近 即动态创建一个图层列表 对于状态栏通知图标 我想在图层中构建我的图标 但是通知API中的图标分配需要资源ID 我想从服务
  • Display.HdrCapability 和configuration.isScreenHdr 之间有什么区别

    我想了解 Android 上的 HDR 功能 因此我编写了以下代码来检查这一点 Display display getWindowManager getDefaultDisplay Display HdrCapabilities hdrCa
  • Sqlalchemy - 执行原始 SQL 查询

    我在连接到多个数据库的 Flask 应用程序中使用 sqlalchemy 使用如图所示的绑定here 我想在非主数据库之一上执行原始 SQL 查询 我正在尝试使用会话 执行 如此处所示 但它针对主数据库执行 API 文档声明您可以使用一个参
  • 自动完成 HTML 中的 ERROR 404(使用 ASP.NET 和 JQuery)

    由于某些原因 在 ASP NET 项目中 我的自动完成功能无法正常工作 我尝试了在数据连接中使用数据源的不同方法 但无济于事 我已经为其创建了一个名为 Diagnose 的数据库 但由于某种原因 它在 jquery 上显示错误 404 这是
  • 如何使我的 css 文件在 django 中工作

    我是 django 新手 但在 python 方面有一些相关技能 我刚刚开始在 django 中构建一个项目 到目前为止我已经能够在我的项目中创建一个应用程序 另外 我已经能够将我的网站的index html文件链接到django 并且在命
  • Final ArrayList 的意义是什么?

    通过将 ArrayList 或其他 Collection 设为 Final 我们可以获得哪些优点 缺点 我仍然可以向 ArrayList 添加新元素 删除元素并更新它 但最终的效果是什么 但最终的效果是什么 这意味着您无法重新绑定变量以指向
  • 如何在 JavaScript 中设置浏览器特定的 css?

    如何设定风格 webkit box shadow 0px 0px 11px 000通过 JavaScript 到一个元素 您可以使用style object element style webkit box shadow 0px 0px 1
  • 活动堆栈问题

    我有两组活动 假设每组有 3 个活动 A1 B1 C1 A2 B2 C2 我从 A1 启动我的应用程序 然后 gt B1 gt C1 这里我想从 C1 跳转到 gt A2在 A2 处 如果我按回键 应用程序应该存在 而不是让我返回 C1 然
  • Firebase:如何自动更新多个资源?

    Firebase 允许更新资源交易地 据我了解 客户端执行此操作 向服务器发送请求 说 如果旧值是 X 则将新值设置为 Y 如果存在争用 服务器可能会拒绝来自客户端的多个更新 直到其中一个更新被接受为止 现在 如果我想自动更新多个资源该怎么
  • 如何使用javascript删除表中的特定行?

    到目前为止我已经实施了 在输入字段中输入值并单击 添加 按钮 输入的值将添加到新行 当我单击删除按钮时 所有行都将被删除 我需要实施什么 复选框应该添加到每一行 如果我选择该复选框并单击 删除 按钮 则只有该特定行应该被删除 并且如果我也选
  • Angular 中的通用 http 错误处理

    Angular2 JWT为原生 Angular http 类提供 AuthHttp 包装器 该类会自动在每个请求中包含 http 授权标头 在我的服务中 我通常会这样调用后端 api getThings Observable
  • 在 django-nonrel 中创建超级用户

    我是一个新手 一直在学习 django nonrel 教程 并在 Google App Engine 中设置了 django nonrel 我现在尝试使用以下命令创建超级用户 manage py createsuperuser userna
  • Nginx 位置匹配正则表达式不起作用

    我无法将位置与下面提到的模式匹配 我想将过期标头设置为 24 小时 但它不起作用 如果我只使用下面提到的正则表达式 它就有效 location abc php expires 24h 下面的例子不起作用 location abc php x
  • Delphi Win64 调试器加载符号有限制吗?

    我正在使用 RAD Studio 10 2 3 东京 Research 相关这个问题 and 这个问题我在调试广泛使用运行时 BPL 作为插件系统的旗舰应用程序时遇到了麻烦 仅当作为 Win64 应用程序进行编译和调试并使用 Delphi
  • 在 ajax 加载的页面片段中运行脚本

    我的网络应用程序动态加载其 UI 的各个部分jquery ajax 不过 新的 UI 部分带有脚本 我这样加载它们 Use ajax url url dataType html success function data textStatu
  • F# 中的通用单位

    在 F 中编写泛型函数时 我可以使用 LanguagePrimitives 模块中定义的成员 例如在此函数中 只需增加一个数字 let inline increment x a x LanguagePrimitives GenericOne
  • CUDA 5.0:替换 cutil.h?

    我想用新的 CUDA 5 0 编译一个旧项目 基于 CUDA 2 3 不幸的是 它使用了旧的 cutil h 标头 该标头在 CUDA 5 0 中不再可用 这个标题有替代品吗 特别是缺少图像导入和导出功能 PPM PGM 例如剪切保存PGM
  • JPanel 填充所有 JFrame 空间

    我编写了这段代码来显示面板中的一组颜色 import java util ArrayList import java util List import javax swing JFrame import javax swing JPanel