- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我的问题是,使用 setOpaque(false)
(我已经将其与 JPanel
一起用于在 Swing 中布局 UI)是否会影响绘画性能而不是保持一切都是不透明的(其中 isOpaque()
返回 true
)。
我不太熟悉 Swing 如何呈现 UI,但我猜想如果 JComponent 不是不透明的,那么呈现组件后面的内容会比简单地在组件上绘制不透明背景更难。
最佳答案
是的,它确实会在绘画时增加额外的工作量,但我怀疑您不必为此担心。
基本上,每当您重新绘制一个透明组件时,您都需要沿着链向上寻找一个非不透明的父组件,然后先绘制该组件,然后再绘制子组件。
所以底线是不要担心。如果您有理由使用透明度,请使用它。如果你没有理由,那么你不应该使用它。
您可能想查看 Background With Transparency .它更详细地介绍了不透明属性的含义、它如何影响绘画以及如果您使用透明背景会遇到的问题。
关于java - 使用 setOpaque(false) 会影响 Swing JComponents 的绘画性能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25085404/
我试图将两个面板放置在另外两个面板的顶部,因此位置完全匹配。这将允许我在之前(底部)面板的顶部进行绘画。这样做的原因是,我实现了“拖动矩形”缩放功能,因此用户在面板上拖动鼠标绘制一个矩形,然后面板将填
我想知道 setOpaque() 方法的作用... 这是小程序的一部分: public class Buttons extends JFrame implements ActionListen
我通过扩展 JPanel 并使用 OverlayLayout 在彼此之上添加 2 个 JLabel 制作了一个按钮。 JLabels 之一是图标,它只是一个字体很棒的图标。另一种是悬停文本。我希望 J
谁能解释为什么 Nimbius 对待 setOpaque() 的方式与其他 Java LaF 不同。它破坏了我的代码,因为通常透明的组件不再透明。 编辑:问题似乎只涉及 JTextAreas(这是我需
我正在创建一个模拟类型的应用程序,我想要一个背景层和一个顶部的所有动画层。我目前正在使用 JlayeredPanes,但我无法让顶层的背景显示为透明,因此我可以看到背景,非常感谢任何帮助,代码如下:
我对 JTextArea 有疑问。我想用 setOpaque(false) 使 JTextArea 不可见,但它不起作用。这是我的代码: public class NewClass extends J
我有一个 jLabel,它最初默认将 setOpaque 设置为 false。当我将标签的背景颜色设置为某种颜色并将 setOpaque 设置为 true 时,它不会显示该颜色。为什么即使将 se
import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.GridBagConstr
我向 JPanel 添加了几个 JButton,并为 JPanel 添加了 setOpaque(false)。当我将鼠标移到 JButton 上时,按钮下方出现一个正方形,然后很快消失,这让我感觉很糟
我的滚动 Pane 存在透明度/滚动问题。据我所知,文档没有解决这种行为。 这是我的透明文本面板的代码: textArea.setOpaque(false); scrollPane.s
本文整理了Java中com.tc.admin.common.XContainer.setOpaque()方法的一些代码示例,展示了XContainer.setOpaque()的具体用法。这些代码示例主
所以我创建了一个 NSWindow(带圆角),在 10.10 中,它周围有一个阴影。然而当我在10.9中测试时,阴影消失了。我在每个可能的点设置了断点,并且 [window hasShadow] 始终
我正在创建贪吃蛇游戏,并遇到了必须使用 JLayeredPane 的问题。我已经使用 DrawBoard 类绘制了板,该类必须根据计时器不断地重新绘制。我必须为放置在板上的 3 个水果分配随机颜色,因
我有一个 Java 代码,我在其中实现了一个半透明的 JPanel,上面有一个用 Graphics 2D 绘制的图像。此图像是一个 PNG,其中包含一个白色矩形,80% 不透明,遍及 JFrame。现
我想删除我的 JRadioButton 的背景,但仍保持相同的外观和感觉。图片会自己说话: 当我执行这段代码时: JRadioButton myJRadioButton = new JRadioBut
我的问题是,使用 setOpaque(false)(我已经将其与 JPanel 一起用于在 Swing 中布局 UI)是否会影响绘画性能而不是保持一切都是不透明的(其中 isOpaque() 返回 t
Linux 上的 Java 1.8.0_60。创建一个 JFrame,设置一个 JDesktopPane 作为其内容 Pane ,并用于在任意位置显示一些线条图形和 JInternalFrame。似乎
我的代码是这样的 class ActionPanel extends JPanel{ private JButton calculate; private JLabel sup;
如何让JPanel在这个例子中变得透明?渐变背景不可见: package test; import java.awt.Color; import java.awt.Dimension; import
我是一名优秀的程序员,十分优秀!