【发布时间】:2011-09-07 00:19:48
【问题描述】:
我是 Java 新手,所以我很难自己找到答案。我正在编写一个 Java 应用程序,并且正在使用 Swing。我不确定它是否相关,但我在 Mac 上使用 Netbeans 作为我的 IDE。
我一直遇到这个问题,每当我的 Java 程序启动时都会发出声音。我将其追踪到对 JTextField 元素的 setText 方法调用,该元素恰好位于 JTabbedPane 的未选择面板上。如果我将其注释掉,则不会出现声音。
我想要这样做的原因是为了选择该面板时,它将出现正确的信息,直到程序启动之前我不知道。
有人知道为什么会发生这种情况以及如何禁用它吗?
谢谢!
【问题讨论】:
-
您的代码是否在任何地方引用或任何声音文件?你能识别声音吗?它是 Mac 的内置声音之一吗?
-
啊。愚蠢的我。这与隐藏无关。我是从事件分派以外的线程中轻率地执行此操作的。我不知道为什么它会发出哔哔声,但是当我正确使用 invokeLater 时,声音就消失了。
-
总是令人惊讶,哪些效果不在 EDT 上会产生 :-)
标签: java swing hidden-field beep