【问题标题】:Create GridBagLayout fixed size buttons创建 GridBagLayout 固定大小的按钮
【发布时间】:2016-06-25 09:00:16
【问题描述】:

我想为具有 3 种不同固定尺寸的 GUI 创建按钮。我希望按钮的大小独立于其中的StringGridBagLayout 可以吗?

【问题讨论】:

  • GridLayout 是的,GridBagLayout 不是据我了解.. 除非您使用 hack 将字符串写入相同大小图像并将图像用作按钮的图标。
  • 在考虑了为什么要这样做之后,请确保生成的按钮不小于它们的首选大小。
  • 3 different fixed sizes. - 定义这对您意味着什么。您是否只想更改字体以使显示的文本更易于阅读?您是否只想增加按钮周围的边框但保持文本大小相同?

标签: java swing user-interface layout-manager gridbaglayout


【解决方案1】:

作为替代方案,请考虑使用可用的sizeVariant,图示为here

如果您采用自定义ButtonUI 方法(如最后一行所示),请确保生成的按钮不小于其首选大小。在您的getPreferredSize() 实现中这样做将有助于避免出现here 的陷阱。

【讨论】:

    【解决方案2】:

    尝试将按钮上的 preferredSize 设置为您想要的大小。像这样:

    myButton.setPreferredSize(new Dimension(width, height));
    

    如果由于某种原因无法保持按钮的大小固定,请尝试将按钮的 maximumSize 和 minimumSize 设置为相同的尺寸。

    myButton.setMaximumSize(new Dimension(width, height));
    myButton.setMinimumSize(new Dimension(width, height));
    

    这将使您的按钮固定为 一个 大小。我不确定如何将其修复为多种尺寸,例如小号、中号或大号(基于其文本)。

    【讨论】:

      猜你喜欢
      • 2023-03-28
      • 2014-02-20
      • 2017-03-22
      • 1970-01-01
      • 2011-12-05
      • 1970-01-01
      • 2019-10-13
      • 2017-04-23
      • 1970-01-01
      相关资源
      最近更新 更多