我正在使用 swing(JFrame) 作为我的应用程序的 UI。我需要使用 try/catch 将程序遇到的异常显示到 JFrame 的红色标签。
目前我正在这样做:
some class extends JFrame
{
JLabel label=new JLabel("");
add(label);
findFile()
{
try{
//some code
}
catch(IOException e)
{
label.setText(e.toString());
}
}
所以想知道用catch block 写的一行代码是否正确? 如果(是=好的)thx
否则请告诉我如何将异常打印为 JFrame 上的标签。
提前致谢..
最佳答案
以上代码可能无法运行,因为更新代码似乎并未在事件调度程序线程 (EDT) 中运行。该线程负责更新您的 UI、响应事件等。
您很可能必须使用 SwingUtilities.invokeLater(Runnable run)更新文本。
也就是说,大多数 Swing 应用程序(据我所知)通常倾向于使用 JOptionPane s 向用户显示错误消息和/或任何其他通知。
你在网上找到这两个例子应该没有问题。
关于java - 在 JFrame 中显示异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11538443/