Java JFrame 设置自定义不透明度

标签 java jframe

如何通过用户输入(比如旋转器)更改 jframe 的不透明度?

int opacity = 7;
double dOpacity = opacity/10;
String sOpacity = Double.toString(dOpacity)+"f";
this.setOpacity(sOpacity); //???

上面的代码产生了一堆错误。无论如何,是否可以获取不透明度数字(例如 6),然后将其转换为“this.setOpacity(sOpacity);”的值会接受吗?

错误:

Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: Uncompilable source code - Erroneous sym type: GuiClock.Main.setOpacity
    at GuiClock.Main.cinitComponents(Main.java:97)
    at GuiClock.Main.<init>(Main.java:16)
    at GuiClock.Main$6.run(Main.java:168)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:694)
    at java.awt.EventQueue$3.run(EventQueue.java:692)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

最佳答案

在您的代码中:dOpacity= 0.0

    int opacity = 7;
    float dOpacity = (float)opacity/10; //casting to float , here dOpacity=0.7
    String sOpacity = Float.toString(dOpacity)+"f"; // sOpacity="0.7f"
    this.setOpacity(Float.parseFloat(sOpacity)); //setOpacity(0.7f);

关于Java JFrame 设置自定义不透明度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21948551/

相关文章:

java - JFrame 不呈现任何组件

java - 方法 isBackgroundSet() 给出错误并且不允许我设置颜色

java - JButton 未在我的 JFrame 中绘制。 JFrame 处于 while 循环中

java - 使用 itext 在一个单元格中的同一行中显示图像和文本

Java JFrame 不更新按钮的设置

java - 如何从java中的任何目录和对话框中读取文本文件?

java - 为什么 Eclipse 说 "errors exist"但在控制台中什么也没显示?

java - 为什么我的 jFrame 只在我调整窗口大小时更新?

java - 正则表达式在java中提供额外的输出

java - 在tomcat中运行jsp文件出错?