gpt4 book ai didi

java - ClassCastException处理.core

转载 作者:行者123 更新时间:2023-12-02 01:21:10 24 4
gpt4 key购买 nike

我正在使用Processing 3制作一个简单的工具。

我希望按下“X”按钮时我的草图不会关闭。我找到了question在 StackOverflow 上,但是当我尝试这样做时,出现以下错误:ClassCastException:processing.core.PApplet$8 无法转换为 javax.swing.JFrame

我尝试添加更多库,但现在错误显示不是库错误。

这里有一段代码:

import javax.swing.JFrame;
void setup() {
size(640, 360);
((JFrame)frame).setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
}
void draw() {
textSize(50);
text("some text", width/2, height/2)
}
void exit() {
println("Not exiting");
}

当我尝试运行草图时,出现错误ClassCastException:processing.core.PApplet$8 无法转换为 javax.swing.JFrame

最佳答案

您链接到的答案适用于处理 2,但您正在使用处理 3。

您的错误说明了一切:frame 无法转换为 JFrame,这就是您在此处尝试执行的操作:

((JFrame)frame).setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

要了解此错误的根源,您可以查看 PApplet 类的源代码 here .

在该文件中搜索 "frame" 可以看到 frame 变量现在是 java.awt.Frame 而不是javax.swing.JFrame 。处理还重写 java.awt.Frame 中的一些函数,以提供特定于处理的行为和警告消息。

您可以开始研究如何防止 java.awt.Frame 关闭,但我也会考虑重新考虑您是否想要这样做。阻止窗口关闭有点反模式,因此您应该仔细考虑是否真的需要这样做。您还可以考虑其他选项,例如使用全屏窗口而不是不可关闭的窗口。

关于java - ClassCastException处理.core,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57659710/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com