Tag: 半透明

半透明的JFrame边框

我想让JFrame边框透明,所以我试图使用我自己的Border类… private class ShadowBorder extends AbstractBorder { private static final int RADIUS = 30; @Override public boolean isBorderOpaque() { return false; } @Override public Insets getBorderInsets(Component c) { return new Insets(RADIUS, RADIUS, RADIUS, RADIUS); } @Override public Insets getBorderInsets(Component c, Insets insets) { insets.top = RADIUS; insets.left = RADIUS; insets.bottom = RADIUS; insets.right = RADIUS; […]

如何在图形中以透明颜色制作矩形?

我试图在我的应用程序上以红色阴影绘制一个矩形,但我需要使它变得透明,以便它下面的组件仍然会显示。 但是我仍然想要一些颜色仍然会显示。 我正在绘制的方法如下: protected void paintComponent(Graphics g) { if (point != null) { int value = this.chooseColour(); // used to return how bright the red is needed if(value !=0){ Color myColour = new Color(255, value,value ); g.setColor(myColour); g.fillRect(point.x, point.y, this.width, this.height); } else{ Color myColour = new Color(value, 0,0 ); g.setColor(myColour); g.fillRect(point.x, point.y, this.width, this.height); […]

Java Swing – 造成工件的半透明组件

我目前正在为大学课程开展一个小组项目,而且我遇到了一些绊脚石。 我们决定实施的程序是一个点对点聊天客户端,它有一个用于存储和共享用户名等的中央服务器。我被分配到GUI。 一位朋友开玩笑地建议我加入“火红的背景!” 所以我决定这样做,但要有一个用户选择的背景图像。 按原样,只有背景图像的一些部分可见,所有组件都在其上方,因此我决定尝试实现半透明效果。 这就是我的问题所在: 当从输入框向聊天窗口发送信息,或者在导航朋友列表或滚动聊天窗口时,遗留了奇怪的伪像。 这些工件有时是发送按钮的半透明“鬼”,有时是菜单的一部分,或旧文本。 它看起来像整个框架没有正确重绘,但我不知道它是如何工作的。 对于实现JTextComponent的组件,我将其选择颜色设置为半透明颜色。 对于其他组件,我将背景设置为半透明。 我有一个函数,setTranslucency(组件com),它查看一个组件,根据它是什么设置它的半透明,然后看它是否是某种类型的容器并递归设置每个项目的半透明度。 现在,我发现解决这个问题的方法是将窗口拖出视线(例如最小化或拖动屏幕外的窗口)。 所以, 1)是否有办法强制整个窗口更新,就像我将其拖离屏幕或最小化时一样? 要么, 2)我首先做错了吗? 如果是这样,我该如何解决? 这是一张参考图片: http://sofzh.miximages.com/java/4J9GJ.png

JPanel内部的半透明组件

我有从Myanel扩展的类MyPanel。 MyPanel类具有JLabel组件,其中包含一个图标。 我的问题是如何在MyPanel类中绘制/渲染此JLabel组件以获得半透明效果(请参阅图标)(不创建xxxJLabel扩展JLabel类并覆盖paintComponents方法)。 谢谢

是否可以在java 7中使用半透明窗口,包括标题栏?

与此问题相关: Java Tutorials半透明窗口示例是否给那些使用jdk7的人带来麻烦? 使用jdk1.6.0_26我似乎能够将半透明应用于JFrame,但jre7不是这样: NativeException:java.awt.IllegalComponentStateException:框架已修饰 ex(jruby脚本java,工程jdk1.6虽然没有jdk7): 要求’java’ 类MouseDraw def self.go java_import’javax.swing.JFrame’ java_import’com.sun.awt.AWTUtilities’ f = JFrame.new AWTUtilities.set_window_opacity(f,0.5) f.set_size 200,200 f.show 结束 结束 MouseDraw.go 所以我的问题是“是否有可能在jdk7中有一个半透明的标题栏”(我想要一个透明窗口,我正在创建可拖动/可resize)

如何设置JDialog的透明背景

HY,.. 如何设置背景透明并“删除”近距离操作(标记为红色)? 我只想出示卡片:-) 谢谢..!

半透明窗口内的半透明JPopupMenu – 另类?

我不确定这是否可行,但有没有办法安全地允许弹出窗口是半透明的,即使父容器也是半透明的? 如果没有, 使用或扩展而不是JPopupMenu明智替代方案是什么? 注意: 半透明是指不具有“背景”的组件,类似于setOpaque(false);的效果setOpaque(false); 。 谢谢。 来自2009年用户camickr的论坛回答: 我不知道透明画在1.6.0_10中是否有所改变。 在此之前,我认为透明度只能在轻量级组件中实现(即Swing完成所有绘画)。 JFrame,JWindow和JDialog不是轻量级的,因为它们使用OS组件。 在弹出窗口的情况下,它完全包含在其父帧中时是轻量级的。 但是一个轻量级的弹出窗口不能在框架的边界外绘制,所以JWindow(我相信)被用作弹出窗口,它不能透明。 SSCCE:在半透明的JFrame顶部显示半透明的JWindow import com.sun.awt.AWTUtilities; import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class OpaqueWindowSSCCE { private int countdown = 5; public static void main(String[] args) { new OpaqueWindowSSCCE(); } public OpaqueWindowSSCCE() { final JFrame frame = […]

启用nimbus时,JDK7中无法透明且未修饰的JFrame

看这张图片 : 这是透明框架的代码: GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice gd = ge.getDefaultScreenDevice(); if (!gd.isWindowTranslucencySupported(TRANSLUCENT)) { System.err.println( “Translucency is not supported”); System.exit(0); } JFrame.setDefaultLookAndFeelDecorated(true); 这很好但是在尝试通过添加启用LookAndFeel时 try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if (“Nimbus”.equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } }catch(…….) 它给了我这个错误 线程“AWT-EventQueue-0”中的exceptionjava.awt.IllegalComponentStateException:框架被修饰 这个错误是什么? 以及如何解决? 感谢您的回答和建议。 编辑 提问/ CrossPosted OTN Daniweb CodeRanch