jframe透明

首先创建一个带有滑块的框架,该滑块将用于设置透明度量。

import javax.swing.JFrame;
import javax.swing.JSlider;public class TransparentFrame extends JFrame {public TransparentFrame() {setTitle('Transparent Frame');setSize(400,400);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JSlider slider = new JSlider(JSlider.HORIZONTAL);add(slider);setVisible(true);}public static void main(String[] args) {new TransparentFrame();}
}

其输出将是:

现在将更改侦听器添加到滑块,以便我们可以对其进行监视。

slider.addChangeListener(new ChangeListener() {@Overridepublic void stateChanged(ChangeEvent e) {}
});

现在,我们将用这种方法编写透明性逻辑,但是在执行此操作之前,首先让我们看一下如何使JFrame透明。

为了使JFrame透明,java具有一个内置的实用程序类AWTUtilities 。 通过使用此类提供的方法,我们可以使JFrame透明。 以下是该代码:

AWTUtilities.setWindowOpacity(window, floatOpacity);

参数:

窗口–您的框架/窗口对象。

floatOpactity –在0到1之间。1表示没有不透明度,0表示完全透明。

因此,现在我们知道必须将此逻辑添加到滑块更改事件,并将滑块值指定为floatOpacity值。 因此,对于以下状态更改stateChanged()方法:

@Override
public void stateChanged(ChangeEvent e) {JSlider slider = (JSlider) e.getSource();if(!slider.getValueIsAdjusting()){AWTUtilities.setWindowOpacity(TransparentFrame.this, slider.getValue());}
}

认为已经完成。 不,我们仍然必须确保不透明度值不超过其0.0f到1.0f的限制。 因此,我们必须将滑块限制为这些值。 由于滑块不支持点值,因此我们将以10的倍数取值,然后将它们除以100得到所需的值。 为此,我们将更改JSlider声明和stateChanged,如下所示:

JSlider slider = new JSlider(JSlider.HORIZONTAL, 10, 100, 100);

在stateChanged方法中更改以下行:

AWTUtilities.setWindowOpacity(TransparentFrame.this, slider.getValue()/100f);

所以现在当我们运行该程序时,我们看到一个带有滑块的框架,该滑块设置为结束。 当我们更改滑块时,框架会相应地更改其透明度。

输出:

注意:

要在Eclipse中使用AWTUtilities类,您需要更改首选项设置,否则访问受限类可能会出错。 要更改设置,请执行以下操作:

  1. 右键单击您的项目。 选择属性。
  2. 选择Java编译器并将其展开。
  3. 选择错误/警告。
  4. 启用项目特定的设置。
  5. 在“不建议使用和限制的API”中,您将找到“禁止引用”(访问规则)。将其更改为“警告”或“忽略”

参考: harryjoy博客上的JCG合作伙伴 Harsh Raval 使JFrame透明 。

翻译自: https://www.javacodegeeks.com/2012/09/make-jframe-transparent.html

jframe透明

jframe透明_使JFrame透明相关推荐

  1. qopenglwidget 透明_廊坊透明真空袋用途-祺泰包装

    功能方面:平面真空袋抽真空后易形成不平整,不均匀的现象.目前,真空包装主要用于食品的包装,如肉类.谷类加工食品以及易氧化变质的食品,也可用于机械零件.仪器和羽绒制品.毛制品等蓬松制品的包装.在超shi ...

  2. python绘图背景透明_如何在 Matplotlib 中更改绘图背景

    介绍Matplotlib是Python中使用最广泛的数据可视化库之一.无论是简单还是复杂的可视化项目,它都是大多数人的首选库.在本教程中,我们将研究如何在Matplotlib中更改绘图的背景.导入数据 ...

  3. Java剪切图片为圆形,并使边缘透明。

    剪切图片为圆形,并使边缘透明. 将图片剪切为圆形并使边缘透明 效果图: 看起来朦胧的 但是放进面板之后色彩与原图一致 public static void k() {BufferedImage bi1 ...

  4. win10任务栏透明_任务栏1秒变透明,桌面瞬间高大上,美化必备!

    电脑工具第14期: 大家好呀,有的小伙伴在看到我的教程截图后,问我的电脑任务栏是怎样变透明的,其实很简单,本期章鱼哥就给大家推荐一款一键任务栏变透明神器,仅仅600多K,基本不占用电脑的cpu. 下图 ...

  5. mfc 对话框透明 控件不透明_你不知道的丨透明胶用法

    家家都有的透明胶带,而它的作用不仅仅是用来粘东西.别看它是这么小小一块,可是作用却很多. 平时我们穿的衣服,裤子难免会粘上些毛.在我们紧急出门的时候,突然发现衣服粘有毛,这时候我们的透明胶就派上用场了 ...

  6. WebGL入门(三十九)-透明与不透明物体共存,绘制透明面和不透明面的立方体

    绘制透明面和不透明面的立方体 1. 绘制透明立方体 1.1 绘制透明立方体要点 1.2 绘制透明立方体demo效果 1.3 绘制透明立方体demo代码 1.4 开启隐藏面消除后 2. 透明与不透明共存 ...

  7. css加透明边框,CSS3实现透明边框的方法分享

    我们在写项目的时候,经常性的会遇到弹出层的效果.UI的同学效果做的还挺漂亮的,类似截图如下 就是半透明的边框.汗,前端的同事想到的方案是 做个10*10的png24的半透明图片,然后作为背景平铺(让外 ...

  8. Jtabbedpane设置透明、Jpanel设置透明

    摘自 https://zhidao.baidu.com/question/983204331427010139.html java中如何设置Jtabbedpane为透明 20 在Jtabbedpane ...

  9. 转载 - 背景透明,文字不透明【学习】

    [ 以下方法,测试后,IE6下,背景并未透明,暂不知解决办法.]<!DOCTYPE html> <html> <head> <meta charset=&qu ...

最新文章

  1. Redis启动服务器端和客户端的命令(redis-server、redis-cli、--help、kill、ping、切换数据库)
  2. MPB:生态环境中心韩丽丽等-土壤病毒组富集及DNA提取
  3. 使用json-server搭建模拟api接口
  4. C++ Const指针学习
  5. hdu 2795 公告板 (单点最值)
  6. Django常用命令总结(图片)
  7. 天大计算机英语面试,天大学姐英语面试干货,适合“三无”考研党!
  8. 当年中国的“四大工学院”,现在都咋样了?
  9. java中PL层_安装pljava - RuralHunter的个人空间 - OSCHINA - 中文开源技术交流社区
  10. 大学生想要通过看书自学编程,却始终没成功,是因为你没有技巧!
  11. redhat,centos Linux常用命令LS之常用功能
  12. Spring MVC学习总结(15)——SpringMVC之国际化简单实现
  13. POJ3178 计算几何+DP
  14. Git(6)-- 记录每次更新到仓库图文版(git clone、status、add、diff、commit、rm、mv命令详解)
  15. 【LED灯屏控制器】国产FPGA之 AG10KSDE176 初探(1)
  16. CCPC-wannafly Camp Day2 讲课内容总结(杜瑜皓-数据结构)
  17. hc05模块android代码,Arduino使用HC05蓝牙模块与手机连接
  18. php yii 微信支付宝,Yii使用easywechat实现微信支付
  19. 使用极狐GitLab限制开发者使用CI/CD的权限,三种方案
  20. samba报错:smbd dead but pid file exists

热门文章

  1. 阿里巴巴对Java编程【单元测试】的规约
  2. ajax读取.txt文件出现乱码
  3. 有5家衣服专卖店,每家最多购买3件,用户可以选择离开,可以买衣服,最后打印总共买了几件衣服
  4. 1分钟学会python_快速入门:十分钟学会Python
  5. 什么叫做在oracle目录下,ORACLE directory 目录
  6. java中configmanager_Spring4新的javaConfig注解
  7. html点击弹出iframe,JavaScript:关于跨iframe弹窗
  8. leetcode初级算法4.只出现一次的数字
  9. SQL编程---存储过程和存储函数
  10. 搭建一个简单的Spring boot+maven项目