您可以为 JFrame 内的 JPanel 设置永久大小吗?

2023-12-08

我当前的问题是我有一个带有 2x2 GridLayout 的 JFrame。在其中一个正方形内,我有一个用于显示网格的 JPanel。我正在与 java swing 库一起度过愉快的一天...看看

Image

Java 会自动扩展每个 JLabel 以适合屏幕。我希望它只是那些蓝色方块(水)和黑色边框,而不是那个灰色空间。有没有一种方法可以永久设置 JPanel 的大小,这样我就不必在获得确切的尺寸之前更改 JFrame 的大小一百万次,从而使灰色空间消失?

我还想设置这些按钮的大小,这样它们就不会那么大(BorderLayout用于按钮和文本字段)


网格包布局是你真正想要使用的。 GridLayout 将强制布局中的每个组件具有相同的大小,无论您对它们施加什么大小限制。 GridBagLayout 更强大,也更复杂。研究API页面为了它。使用GridBagLayout,如果您不希望组件填充整个网格空间,它们甚至可以保持您要求的大小。为了防止组件的大小发生变化,我将设置所有三个可用的大小约束:

water.setPreferredSize(new Dimension(20, 20));
water.setMinimumSize(new Dimension(20, 20));
water.setMaximumSize(new Dimension(20, 20));

对于你的按钮,我肯定会使用内部面板作为Bryan提到。如果您不希望所有按钮具有相同的大小,您可以使用他建议的 GridLayout 或 FlowLayout。将所有按钮添加到该内部面板而不是主面板。

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

您可以为 JFrame 内的 JPanel 设置永久大小吗? 的相关文章

随机推荐

  • 如何在按钮 onclick 被触发后保持警报对话框打开? [复制]

    这个问题在这里已经有答案了 主题有点说明了一切 我正在向用户请求 PIN 码 如果他们输入了 PIN 码 请单击确定肯定按钮 并且 PIN 不正确 我想显示 Toast 但保持对话框打开 目前它会自动关闭 当然 这是需要纠正的非常微不足道的
  • 将文件中的行替换为另一个字符串

    我有一个包含以下内容的文本文件 public class MyC public void MyMethod System out println My method has been accessed System out println
  • 如何在Java中使用readline()方法?

    我是Java初学者 我正在阅读通过给变量赋值的主题readLine 从键盘的方法 书中给出的程序如下 import java io DataInputStream class Reading public static void main
  • sql server 函数中的 newid()

    我必须在查询结果处插入一个假列 这是表值函数的返回值 该列数据类型必须是唯一标识符 最好的方法 我认为 是使用newid 功能 问题是我无法使用newid 在这种类型的函数中 在函数内的 newid 中无效使用副作用或时间相关运算符 这是一
  • 在 JavaScript 中将字符串转换为 XML 文档

    在 Ajax 的 jQuery 示例页面上看到了这个示例 var xmlDocument create xml document ajax url page php processData false data xmlDocument su
  • 我可以使用一些解决方法来避免混合内容错误吗?

    我正在开发一个使用 esri 服务 资源的 Net core Web 应用程序 该应用程序最终将托管在客户端的服务器上 我们的服务器上托管有 esri 资源 他们的服务器上托管有其他 esri 资源 不管出于什么原因 他们拒绝使用 SSL
  • Python 错误:OSError:[WinError 193] %1 不是有效的 Win32 应用程序

    使用 Anaconda Navigator 更新一些包 numpy matplotlib 和 Spyder 后 我使用这些包的代码不再有效 并且在导入时出现错误 我尝试将更新恢复到以前的版本安装 没有成功 我检查了Python 产生 OSE
  • 在 d3.js 中查找路径的切线

    我想沿着路径放置 svg 元素 例如椭圆 例如使用 d3 js 生成的曲线带 B 样条插值的线生成器 虽然使用 path getPointAtLength 查找沿路径的点的坐标很容易 但我不知道如何找到线上任何点的切线 如果我可以获得切线
  • Android HttpUrlConnection getInputStream 抛出 NullPointerException

    我正在尝试从此网址下载图像 https hme player pictures s3 amazonaws com test 512813ed3b83286c72f376c7 thumb100 jpg 这是堆栈跟踪 03 21 12 58 0
  • Java println 语句中字符串中 + 符号的含义

    我是 Java 新手 下面这句话是什么意思 补充 登录println System out println 计数为 i 加号运算符具有双重含义 它也是一个串联运算符 由于 计数是 是类型String 我 Integer 转换为String以
  • 如何处理php中eval函数的解析错误

    我正在尝试使用 php 的 eval 函数 但我一直在处理解析错误 就像考虑我是否有 1 或 1 这样的边缘情况 如果给我解析错误 语法错误 有人知道如何处理语法错误或如何绕过错误消息 我想给出更好的错误消息 是否可以将错误消息存储到变量中
  • 将Python venv移动到另一台没有互联网的机器上

    我正在尝试将 Python 项目部署到没有互联网的机器上 因为它没有互联网 所以我无法使用 pip 安装任何软件包requirements txt文件 我想知道是否可以将包含所有已安装软件包的现有环境移动到另一台预安装了所有软件包的计算机中
  • AVMutableComposition - 视频资源之间的空白/黑框

    我目前正在尝试使用 AVMutableComposition 将 5 个视频背靠背放置 如下所示 mixComposition insertTimeRange CMTimeRangeMake kCMTimeZero asset1 durat
  • 如何限制函数可以运行的时间(添加超时)?

    如何设置函数可以运行的最长时间限制 例如 使用time sleep作为占位符函数 如何限制时间量time sleep最多可以运行 5 分钟 300 秒 import time try As noted above time sleep is
  • 数组结构与结构数组

    从我在这里读到的一些评论来看 最好是Structure of Arrays SoA over Array of Structures AoS 用于像 CUDA 这样的并行实现 如果这是真的 有人能解释为什么吗 选择 AoS 与 SoA 以获
  • 如何在iPhone中将QTVR图像旋转360度?

    我想开发一款基于 iPhone 的应用程序 其中我想将一张图像 类型 QTVR 旋转 360 度 所以 我可以得到与谷歌地图中的街景相同的行为 如果有人这样做了 请在此处分享代码片段或任何相关文章的任何有用的网址 然后请将其粘贴在回复中 非
  • 'static' 关键字在类中起什么作用?

    具体来说 我正在尝试这段代码 package hello public class Hello Clock clock new Clock public static void main String args clock sayTime
  • 当输入值可以是不同格式时,如何在 R 中将日期转换为格式“yyyy-mm-dd”

    我可以接收日期可以采用以下两种格式之一的文件 mm dd yyyy 或 yyyy mm dd 它们是首先要考虑的因素 无论我收到的日期格式如何 我都希望能够将它们转换为 yyyy mm dd 格式的 日期 数据类型 我尝试过使用 df 1
  • 比较 Array 扩展中的对象导致 Swift 中的错误

    我正在尝试构建一个扩展 将 NSArray NSMutableArray 的一些便利功能添加到 Swift Array 类中 并且我正在尝试添加此功能 func indexOfObject object AnyObject gt Int i
  • 您可以为 JFrame 内的 JPanel 设置永久大小吗?

    我当前的问题是我有一个带有 2x2 GridLayout 的 JFrame 在其中一个正方形内 我有一个用于显示网格的 JPanel 我正在与 java swing 库一起度过愉快的一天 看看 Image Java 会自动扩展每个 JLab