【问题标题】:Adding background in jButton (netbeans gui builder)在 jButton 中添加背景(netbeans gui builder)
【发布时间】:2012-03-23 20:18:59
【问题描述】:

当我尝试通过转到 Jbutton 的属性和图标来在 Java 中添加背景时,它会设置按钮的背景,但我写在按钮上的文本会向右移动(在按钮区域之外) .什么是解决方案?

【问题讨论】:

  • 肯定有其他问题,或者来自使用的 GUI 框架的属性,为了获得更好的帮助,请尽快使用SSCCE编辑您的问题

标签: java swing netbeans jbutton


【解决方案1】:

据我了解,您没有设置背景,而是通过此设置 Icon 到按钮。这就是为什么您会在右侧看到图像而在左侧看到文本。要将图像作为背景添加到按钮,您需要覆盖 JButonpaintComponent(g) 方法并在其中绘制图像。

【讨论】:

  • 有什么简单的方法可以做到这一点。我的意思是通过属性??
  • @Zara 我对 NetBeans 不是很熟悉。但是可能应该有一些功能可以在 jbutton paintComponent 方法中编写自定义代码。如果你找不到它,那么创建你自己的类来扩展 JButton 并在那里覆盖paintComponent。
  • +1,我喜欢这种方法,因为我现在正在 Swing 学习绘画 :-)
【解决方案2】:

如果您想使用NetBeans 将图像添加到您的JButton,请按照以下步骤操作:

  1. 右键单击Source Packages,在Projects 下并选择New -> Other -> (Under Categories) Select Other -> (Under File Types) Select Folder
  2. 单击下一步,并为文件夹提供名称。例如resources,请检查Parent Folder 的src 是否写在字段内。现在点击完成。
  3. 现在手动转到计算机上的此位置并创建一个新文件夹,例如图像,然后将 IMAGE 粘贴到此文件夹中。
  4. 现在在Design Mode 下,选择您的JButton,然后在右侧转到此JButton 的属性。在前台你会看到写着icon,点击与之关联的Eclipse按钮打开如下图所示的窗口:
  5. 请检查此图 1,填写您的值,然后按 OK

您已将图像添加到您的 JButton。 如果你想使用我使用的图像,这里是。 是的,我忘了提,为此,我在 Properties 内的 Other Properties 下设置了 Horizo​​ntalTextPosition = CENTER 和 veritcalTextPosition = BOTTOM。

这是整个事情的输出:

【讨论】:

    【解决方案3】:

    解决办法是什么?

    一个“解决方案”1 将文字写在图像上。不过,这不是一个很好的解决方案,因为:

    • 需要在用于按钮的每个图标(例如正常、翻转、选中等)上写入文本。
    • 然后您有责任选择合适的字体和大小。
    • PLAF 更改时文本不会自动更改字体或大小。
    • 诸如助记符和加速器之类的东西不适用于图像-文本按钮。

    1. 只有在写下要点时,才能更清楚地知道使用它会有多么古怪。

    【讨论】:

      猜你喜欢
      • 2016-10-29
      • 2013-08-18
      • 2013-10-01
      • 1970-01-01
      • 2012-07-26
      • 1970-01-01
      • 1970-01-01
      • 2012-10-20
      • 1970-01-01
      相关资源
      最近更新 更多