我有一个加载网页的Java swing应用程序。有时,网页需要一段时间才能加载,具体取决于用户的互联网连接。
我想阻止此框架,直到页面加载完毕。
答案 0 :(得分:5)
最简单的选择是弹出一个模态对话框:
JDialog modalDialog = new JDialog(frame, "Busy", ModalityType.DOCUMENT_MODAL);
modalDialog.setSize(200, 150);
modalDialog.setLocationRelativeTo(frame);
modalDialog.setVisible(true);
您可能需要在其中添加进度条。
答案 1 :(得分:0)
有可能...... 我想出了一个解决方案。
我也有这个问题。
按照another answer的建议创建模态对话框时,只有用户可以关闭它 只有在加载结束时才能自行处理它才有用。
[UPDATE]
这是我的Dialog Class
public final class Loading extends javax.swing.JDialog {
/*
* Creates new form Loading
* @param parent
* @param modal
*/
public Loading(java.awt.Frame parent,boolean modal) {
super(parent, modal);
initComponents();
}
private void formWindowActivated(java.awt.event.WindowEvent evt) {
//Code to execute while loading
this.dispose();
}
}
在这里你可以这样称呼它。
Loading l = new Loading(this/*In case you class is a frame, null otherwise*/, true);
l.setVisible(true);
执行加载代码后,它会解散并继续父类的代码。