Java JProgressBar能够隐藏';酒吧';而不是';流体';

Java JProgressBar能够隐藏';酒吧';而不是';流体';,java,swing,jprogressbar,Java,Swing,Jprogressbar,我知道“流体”不是最好的描述,但这就是我想象的进度条中的绿色 我只是想知道是否有可能从进度条上看到绿色的“流体”,而不是容纳“流体”的容器 这样做的目的是在进度条下制作包含绿色“流体”的艺术品,而不是保存该流体的系统默认UI 编辑: 这是当前进度条的照片: 打开的JFrame是不可见的,所以你只能看到这个条。 我想知道是否可以从JProgressBar周围移除灰色,只显示绿色。 您应该使用SetbOrderPaint来删除边框,我想这就是您想要的。对于流体,您可能指的是BasicProgres

我知道“流体”不是最好的描述,但这就是我想象的进度条中的绿色

我只是想知道是否有可能从进度条上看到绿色的“流体”,而不是容纳“流体”的容器

这样做的目的是在进度条下制作包含绿色“流体”的艺术品,而不是保存该流体的系统默认UI

编辑:

这是当前进度条的照片:

打开的
JFrame
是不可见的,所以你只能看到这个条。 我想知道是否可以从
JProgressBar
周围移除
灰色
,只显示绿色。

您应该使用SetbOrderPaint来删除边框,我想这就是您想要的。

对于流体,您可能指的是
BasicProgressBarUI
在其
paintDeterminate()
的实现中使用的颜料。UI委托用
ProgressBar.background
填充所有
boxRect
,用
ProgressBar.foreground
填充部分
boxRect
。你可以

  • 如前所述,通过
    UIManager
    更改颜色,但学员没有义务使用您的设置

  • 按照建议实施您自己的
    ProgressBarUI


    • 我知道这是一个老问题,但我在谷歌上找到了它,我也在尝试做同样的事情。我发现将背景设置为透明效果非常好,至少对于Nimbus L&F来说是这样,我还没有在其他人身上进行过测试

      progress.setBackground (new Color (0, 0, 0, 0));
      

      实际上它什么也没做。这张图片显示了我的应用程序上的当前进度条,你在这里看到的一切都是JProgressBar,JFrame是不可见的。我想要的是灰色的不可见,但我仍然希望能够在进度条中看到绿色,嗯,我理解,我猜你也没有在桌面上使用普通java?看看这个,我正在Windows8上使用Java。这可能就是进度条看起来很奇怪的原因。我不喜欢新的Windows 8进度条,哈哈,我在这里呆了一会儿,然后我尝试了一些你指给我的方法。方法JComponent.isOpaque()不适用(实际参数列表和形式参数列表长度不同)我在尝试complie时遇到了这个错误。嗯,我总是可以写一些类似于进度条的东西。谢谢你的帮助!感谢您的详细输入。谢谢你也让我注意到了专有名称。我是一个纯粹的自学型社区,所以像这样的每一点知识都有帮助。如前所述,我知道Java不会在Windows8中使用我的设置。因此,我将考虑使用您给我的链接制作自己的ProgressBarUI。谢谢你的知识。