Java 透明度渲染错误

2024-01-12

我目前正在开发一个信息亭风格的 Java 程序来显示天气、时间、天气预报等。这是该程序的截图should看起来像(时间更新之前的截图)

各个部分均创建为 JPanel,其中包含paintComponent()方法被重写。他们绘制渐变标题和半透明背景。但是,当我更改其中一个面板的内容时,以前的内容会被保留,而不是被删除。一个例子如下所示:

可以看到,当时间从 11:51 变为 11:52 时,数字重叠,背景变亮(因为在其上重新绘制了半透明背景)

图形错误

我应该做什么来防止这种重叠?最终,我希望当单个面板更新其内容时不必重新绘制整个屏幕。我宁愿只重画该特定部分。重新绘制背景以及其中的所有组件将很容易。

Update

几个答案涉及清理要绘制的区域。无论我使用g.clear() or AlphaComposite.CLEAR它会删除背景图像。这可以在下图中看到。也许如果我可以在清除该区域之前复制背景,我可以重新绘制背景的该部分,然后适当地对其他图像进行分层。想法?

Update 2

提交的答案显示了放置在透明面板和背景上的计时器的完整工作示例。这非常有用,但是,我不会手动绘制我的子组件。时间、天气图标和温度都是 JLabels 布局在半透明面板上。我不想手动绘制各个组件。


类似的问题

已解决here https://stackoverflow.com/questions/2163544/re-paint-on-translucent-frame-panel-component/2166500#2166500

另请注意,“Swing 程序应该覆盖paintComponent()而不是覆盖paint()."—在 AWT 和 Swing 中绘制:绘制方法 https://www.oracle.com/technetwork/java/index.html#callbacks.

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

Java 透明度渲染错误 的相关文章

  • 点击 Java Web 服务:curl 或 URLConnection

    我使用的 Java 服务器在以下 URL 上公开 RESTful API http localhost 8080 my server 文档建议使用curl用于提交简单的PUT请求 文件上传 并强烈建议用户使用与示例中提供的完全相同的参数 所
  • 我们可以实例化一个抽象类吗?

    在一次采访中 有人问我 我们是否可以实例化一个抽象类 我的回答是 不 我们不能 但是 面试官告诉我 错了 我们可以 我对此争论了一下 然后他告诉我自己在家尝试一下 abstract class my public void mymethod
  • 如何在 Spring 中从 application.properties 重新加载 @Value 属性? [复制]

    这个问题在这里已经有答案了 我有一个spring boot应用 在run文件夹下 有一个额外的配置文件 dir config application properties 当应用程序启动时 它使用文件中的值并将它们注入到 Value my
  • Spring Security 中 Web 忽略和 Http 允许之间的区别?

    这两种方法有什么区别 Override protected void configure HttpSecurity http throws Exception http authorizeRequests antMatchers api p
  • 在循环中使用 if 语句? - 加工

    假设我必须在 for 循环中使用 if 语句 并且 for 循环在特定条件下触发 而 if 语句仅在 for 循环达到特定阶段时触发 例如 条件是一个计数器 当发生特定事件 例如球从屏幕上掉下来 时 该计数器会进行计数 每次球穿过屏幕时 都
  • 搜索 JTable 时 - 未获得正确的 ID

    所以我尝试在搜索名称后单击表 然后在其他表中编辑它 问题是我没有获得正确的 ID 而只获得第一个 ID JTable https i stack imgur com TnNIq png 搜索行动 https i stack imgur co
  • 如何在 JAVA servlet 中处理压缩 (gzip) HTTP 请求(不是响应) - 简单示例?

    我为这个问题苦苦挣扎了很长一段时间 在找到一个简单的解决方案后 想问一个问题和答案 这个问题在堆栈溢出时以不同的方式被多次提出 并且accepted solutions是partially correct and complex或谈论res
  • 为什么 Java 类加载器找不到我的接口?

    在下面的代码中 我使用动态生成一个类sun tools javac Main 我将使用反射创建此类的新实例 问题是 我想避免使用 Reflection 来调用我为此类定义的方法 因此我创建了一个 ProxyInvoker 来引用我在项目中定
  • 如何仅使用命令行运行 Maven 创建的 jar 文件

    我需要一些帮助来尝试使用命令行运行以下 Maven 项目 https github com sarxos webcam capture https github com sarxos webcam capture webcam captur
  • Java 相当于 C# 的 async/await?

    我是一名普通的 C 开发人员 但偶尔也会使用 Java 开发应用程序 我想知道 Java 中是否有相当于 C async await 的东西 简单来说 java 相当于 async Task
  • 在 Graal.js 中使用 java 类

    使用 Graal js 如何将 java 类导入到 JS 脚本中 以下代码适用于 Nashorn JJS 但不适用于 Graal js 因为没有Java type 在graal中 我需要在某个时候调用truffle吗 var ArrayLi
  • 如何在使用 Web 服务时获取会话对象?

    如何在使用 Web 服务时获取会话对象 服务在两个程序之间调用 如何在使用 Web 服务时获取用户会话对象 不可能使用请求对象获取会话 因为当我们谈论服务时不会有请求或响应 如果您正在与JAX WS https jax ws dev jav
  • Preg_match PHP 到 java 的翻译

    我在将 php preg match 转换为 java 时遇到一些问题 我以为我的一切都是正确的 但它似乎不起作用 这是代码 原始PHP Pattern for 44 Character UUID pattern 0 9A F 44 if
  • Java:字符串连接和变量替换的最佳实践[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在 Java 中连接字符串和添加变量值的方法有太多 我应该如何选择一个 优点 缺点 最佳用例等 MessageFormat forma
  • 无法使用 jolokia 从 Kafka 提取 JMX 数据

    我已经在 centos 7 机器上安装了 Jolokia 并尝试使用 Jolokia 代理提取 Kafka 指标 并使用 Nagios 插件 check jmx4perl 与 Icinga 监控工具集成 以下是我遵循的配置步骤 步骤1 下载
  • 从流中过滤/删除无效的 xml 字符

    首先 我无法更改 xml 的输出 它是由第三方生成的 他们在 xml 中插入无效字符 我得到了 xml 字节流表示形式的 InputStream 除了将流消耗到字符串中并对其进行处理之外 是否有一种更干净的方法来过滤掉有问题的字符 我找到了
  • JavaFX:在 WebView img 标签中未加载本地图像

    以下是我的代码 一切安好 我可以加载远程页面 我可以放置 HTML 内容 但我的img标签显示一个X标志表示无法加载图像 Note 我的图像与类位于同一个包中JavaFX在 Smiley 文件夹中 我可以列出所有图像 这意味着路径没有问题
  • javaFX,抛出 NullPointerException,位置是必需的

    我看过其他答案 但没有任何帮助我 抱歉 GUI新手只知道swing的基础知识 这是主课 package application import javafx application Application import javafx fxml
  • Eclipse IDE - 错误:构建路径指定执行环境 Java SE 1.7

    在 Eclipse 中 我收到一个错误 构建路径指定执行环境Java SE 1 7 工作区中没有安装与此环境严格兼容的 JRE 尝试这个 In Eclipse your project gt properties gt java build
  • 为什么 JDOM 的 getChild() 方法返回 null?

    我正在做一个关于 html 文档操作的项目 我想要现有 html 文档中的正文内容将其修改为新的 html 现在我正在使用 JDOM 我想在我的编码中使用 body 元素 为此 我在编码中使用了 getChild body 但它向我的程序返

随机推荐

  • 如何从 kerberos 票证中检索组成员身份?

    我正在尝试从 windows2008r2 上生成的 Kerberos 票证中提取组成员身份信息 在一个URL中 我发现了以下语句 Kerberos 还在研究在 Kerberos 授权数据中包含组成员身份信息的机制 尽管将组名称包含到 ACL
  • SQLite 的磁盘 I/O 错误

    我有一个 很小的 动态网站 它 大致 是一个使用 SQLite 数据库的 Perl CGI 脚本 DBI 包是 Perl 中使用的抽象层 大约一周前 我开始看到此错误消息 disk I O error 10 at dbdimp c line
  • Scala 随机字符串

    希望你做得好 我刚刚开始 scala 基本编程 我想用 foreach 或其他你认为最好的方法生成一些字符串变量 我该如何使用scala util Random生成此结果 Var 1A String random between A to
  • Powershell 哈希表到 HTML

    我正在尝试编写一个非常简单的 Powershell 脚本 用于检查某个位置中的文件 然后确定是否有超过 90 天的文件 很简单 但如果我可以使用 PS 的 send mailmessage cmdlet 来使用我创建的哈希表并接受格式化为
  • 从顶部删除项目时如何保留 AngularJS 中 ng-repeat 的滚动位置

    我尝试从解决方案开始工作 如何在 AngularJS 中保留 ng repeat 的滚动位置 https stackoverflow com questions 23736647 how to retain scroll position
  • SVN签出忽略文件夹

    我可以忽略 svn checkout 上的文件夹吗 我需要在构建服务器上结帐时忽略 DOCs 文件夹 edit 忽略外部因素不是一个选项 我有一些我需要的外部设备 您不能在签出时直接忽略文件夹 但可以在 svn 1 5 中使用稀疏签出 例如
  • 当我们在输入 html 标签中使用 name="Keys" 时?

    当我们在输入 html 标签中使用 name Keys 时 我知道 name 属性 但是当我们使用时keys name 属性指定输入元素的名称 name 属性用于在提交到服务器后识别表单数据 或者在客户端使用 JavaScript 引用表单
  • 如何检查PHP中的特殊字符[重复]

    这个问题在这里已经有答案了 可能的重复 preg match php特殊字符 https stackoverflow com questions 3937569 preg match php special characters 大家好 我
  • Pyinstaller 加载启动画面

    Pyinstaller 最近添加了一个启动画面选项 耶 但启动画面在 exe 运行的整个过程中保持打开状态 我需要它 因为我的文件打开速度非常慢 我想警告用户不要关闭窗口 有没有办法让 gui 打开时关闭启动屏幕 来自 pyinstalle
  • 如何使用 Retrofit 从 Android 发送 FCM 通知?

    我要寄fcm notification从 Android 设备到另一台设备 使用retrofit 我尝试这个但是 public interface ApiInterface Headers Authorization key AAAA4Ub
  • 如何根据扩展值搜索资源?

    我有一组以下形式的 fhir 资源
  • DOS下用什么来制作图形?

    哪些库用于在 DOS 控制台 上制作 2D 3D 图形和图形用户界面 我指的是 德军总部 3D 暗影武士 等游戏中使用的糟糕图形 硬件加速的想法直到 Windows 时代才真正流行起来 因此 大多数显卡运行的模式都是将大型内存阵列映射到特定
  • Flask - AttributeError:“模块”对象没有属性“项目”

    我正在使用 Flask restful 并具有以下 API 类 views py from datetime import date from flask import jsonify from flask ext restful impo
  • JqG​​rid多选列表在IE7/8编辑模式下总是选择第一个选项

    进入编辑模式时 网格 v4 3 1 在下拉列表中选择正确的值 然而 IE 7和IE 8似乎有一个问题 它会自动选择第一项 随着也应该选择其他值 有人在 IE7 8 中偶然发现过这个吗 在研究 jqgrid 的源代码时 我还看到了一条实际上可
  • 将 PHP 变量传递到 Javascript window.location

    我试图将 php 变量传递到 java 脚本 window location 中 该脚本在从数据库中删除项目后将用户返回到当前列表视图 我似乎无法得到正确的语法 Code function confirmation a var currSt
  • root.overrideredirect 和 绑定

    我希望以下程序退出
  • 数据表选择

    如何使用 DataTable 的 Select 方法来获取以 M 开头的用户名 假设 UserNameTextBox 有一个字符串M oDataTable Select UserName UserNameTextBox Text DataV
  • 覆盖 wp-login.php 样式

    我有一个 Wordpress CMS 网站 其中大多数标签都需要是白色的 因此 主题包括每个表单标签的以下样式 login label color fff font size 14px 上面的样式是从 wp login php 文件中填充的
  • Delphi 2009 中的 dfm 中添加的 DoubleBuffered 属性在 Delphi 2007 中不存在

    这是否意味着我无法在 delphi 2007 和 2009 之间共享表单 DoubleBuffered 在 TWinControl 中已经有一段时间了 Delphi 2009 的不同之处在于它是现在发布的 如果您只能忽略错误 而不是使属性起
  • Java 透明度渲染错误

    我目前正在开发一个信息亭风格的 Java 程序来显示天气 时间 天气预报等 这是该程序的截图should看起来像 时间更新之前的截图 各个部分均创建为 JPanel 其中包含paintComponent 方法被重写 他们绘制渐变标题和半透明