Java2D神器?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java2D神器?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1077字,纯文字阅读大概需要2分钟。
内容图文
![Java2D神器?](/upload/InfoBanner/zyjiaocheng/722/b7956893eac8473e95f895b1b45cf73d.jpg)
我正在使用Java2D进行我正在编写的游戏,并且在我开始将其与其他swing组件集成之前没有遇到任何问题.我的问题是当我添加到JFrame的第一个组件不是我正在绘制的画布时,当我将鼠标悬停在文本窗格的滚动条上时,我会看到一个奇怪的神器.每次执行应用程序时都会发生这种情况.当我第一次使用画布时,没有问题.
出于某种原因,这似乎只发生在Windows上,当使用默认的Java2D管道时(恰好是sun.java2d.d3d = true),并且会发生工件.当我设置sun.java2d.opengl = true或sun.java2d.noddraw = false AND sun.java2d.d3d = false时,它不会发生.
我猜这是Direct3D Java2D管道的某种错误?我可以轻松地解决它,但很想知道是否有其他人遇到过这样的问题?我正在运行最新的JDK7u7,但它也适用于以前的版本.我应该注意,如果我最小化窗口并恢复它,那么工件就会消失,并且在我重新启动应用程序之前永远不会返回.
有神器:
没有工件(首先添加画布而不是JLabel图像):
如果有人对此有任何进一步的信息,我会很感激.谢谢!
解决方法:
这是一个众所周知的工件,因为它没有兑现opacity财产.因为“Swing程序should override paintComponent()而不是覆盖paint(),”请务必先在您的实现中调用super.paintComponent().存在相关示例here和here.
附录:另见Mixing Heavyweight and Lightweight Components.
内容总结
以上是互联网集市为您收集整理的Java2D神器?全部内容,希望文章能够帮你解决Java2D神器?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。