【问题标题】:Clear JFrame background on transparent window在透明窗口上清除 JFrame 背景
【发布时间】:2010-12-31 19:52:33
【问题描述】:

我有一个透明的 JFrame AWTUtilities.setWindowOpaque(this, false); 调整窗口大小时出现问题。我需要一些可以在绘制之前清除窗口背景的东西,我需要让它的所有背景都是空的和透明的。现在这幅画是在旧背景上绘制的,看起来很丑。 我尝试在背景上绘制透明图像,但我遇到了同样的问题。

【问题讨论】:

    标签: java awt transparent


    【解决方案1】:

    如果您有一个不透明的组件,您将完全负责绘制其内容。窗口系统或 AWT 不会将背景设置为某个已定义的状态。

    所以至少你应该做一些像基本 Canvas 代码这样的事情

            g.clearRect(0, 0, width, height);
    

    “透明”到底是什么意思。您要查看桌面吗?你想看看你的组件后面的面板吗(那么至少它不应该是“不透明的”)。

    【讨论】:

    • clearRect 是答案,奇怪的是在谷歌上搜索并没有发现这一点,我也在 IRC 上问过
    猜你喜欢
    • 2011-02-01
    • 2014-05-28
    • 2023-03-22
    • 2011-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-27
    • 1970-01-01
    相关资源
    最近更新 更多