这样一段代码:
private void log(String message) {
LogBox.append(message + "\n");
}
private void log(Exception e) {
log(e.getMessage());
}
private void ConvertButtonActionPerformed(java.awt.event.ActionEvent evt) {
String url = UrlBox.getText();
if (url.isEmpty()) {
log("Empty URL");
return;
}
LogBox.setText("");
try {
log("URL "+url+" accepted. Trying to download...");
String content = URLConnectionReader.getText(url);
log("Downloaded. Parsing the content...");
//
} catch (Exception e) {
log(e);
}
}
应在每次调用后立即将每条消息输出到LogBox
( JTextArea
) ,但仅在完成时输出。log
URL ... accepted
URLConnectionReader.getText(url)
有几种方法可以立即输出:
- Visual Basic 6 和 .NET 中的 Application.DoEvents
- Delphi 中的 Application.ProcessMessages
有没有一些简单的方法可以立即输出?我正在研究有关 DoEvents 以及如何在 Java 中执行此操作的问题,但我认为从多线程开始学习 Java 不是正确的方法。