我想在功能運行時顯示進度條。展示它的最佳方式是什麼?基本上我正在構建一個程序發送多個郵件在一個單一的點擊。發送郵件時,我想在發送郵件時顯示進度條。javafx:進度條顯示進程的進度?
-1
A
回答
1
這種情況下的最佳解決方案是使用Task
。
例子:
Task<Parent> yourTaskName = new Task<Parent>() {
@Override
public Parent call() {
// DO YOUR WORK
//method to set progress
updateProgress(workDone, max);
//method to set labeltext
updateMessage(message);
}
};
//ProgressBar
ProgressBar pBar = new ProgressBar();
//Load Value from Task
pBar.progressProperty().bind(yourTaskName.progressProperty());
//New Loading Label
Label statusLabel = new Label();
//Get Text
statusLabel.setText("Loading...");
//Layout
VBox root = new VBox(statusLabel, pBar);
//SetFill Width TRUE
root.setFillWidth(true);
//Center Items
root.setAlignment(Pos.CENTER);
//SetOnSucceeded methode
yourTaskName.setOnSucceeded(new EventHandler<WorkerStateEvent>() {
@Override
public void handle(WorkerStateEvent event) {
System.out.println("Finish");
}
});
//Start Thread
Thread loadingThread = new Thread(yourTaskName);
loadingThread.start();
希望這有助於你。
P.S:在運行爲Thread任務的代碼...
0
只需使用javafx.scene.control.ProgressBar
文檔: http://docs.oracle.com/javafx/2/ui_controls/progress.htm
+3
至少提供一個* current *文檔的鏈接:http://docs.oracle.com/javase/8/javafx/user-interface-tutorial/progress.htm# CHDDJAJE –
0
我實現你想要的最後一次,如果你想顯示progressIndicator或進度發送運行時,試試這部分代碼
senderThreadlive = new Thread(new Runnable() {
@Override
public void run() {
try {
Platform.runLater(new Runnable() {
@Override
public void run() {
ProgressIndicator WaitingSend=new ProgressIndicator();
WaitingSend.setProgress(ProgressIndicator.INDETERMINATE_PROGRESS);
WaitingBox.getChildren().add(WaitingSend);//this is an HBOX
SendMailButton.setDisable(true);
SendMailButton.setText("sending in progress");
}
});
//call Your method of sending
SimpleMail.EmailSender.sendEmail(MailSenderTxt.getText(), MotMailTxt.getText(), DestMailTxt.getText(), ObjetMailTxt.getText(), org.jsoup.Jsoup.parse(ContentMail.getHtmlText()).text());
Platform.runLater(new Runnable() {
@Override
public void run() {
WaitingSend.setProgress(0);
WaitingSend.setVisible(false);
SendMailButton.setDisable(false);
SendMailButton.setText("Send");
}
});
} catch (AuthenticationFailedException e) {
Platform.runLater(new Runnable() {
@Override
public void run() {
//Your popUp here
}
});
} catch (SendFailedException e) {
Platform.runLater(new Runnable() {
@Override
public void run() {
//Your popUp here
}
});
} catch (MessagingException e) {
Platform.runLater(new Runnable() {
@Override
public void run() {
//Your popUp here
}
});
} catch (Exception ex) {
Platform.runLater(new Runnable() {
@Override
public void run() {
//Your popUp here
}
});
}
}
});
senderThreadlive.start();
+0
代碼太麻煩了...有更簡單的方法 – Developer66
相關問題
- 1. JavaFx進度條
- 2. 進度條未顯示進度條
- 3. 顯示進度條
- 4. 顯示進度條
- 5. JavaFX中的進度條
- 6. android進度條不顯示
- 7. 顯示進度條動畫
- 8. 顯示Eclipse mini進度條?
- 9. 顯示進度條問題
- 10. 進度條不顯示
- 11. 進度條不顯示
- 12. WPF進度條未顯示
- 13. NavigationProgress不顯示進度條
- 14. Android:顯示進度條
- 15. 顯示下載進度條
- 16. 如何顯示進度條?
- 17. 進度條不顯示
- 18. 在壓縮android時顯示進度條進度條
- 19. 進度條與進程
- 20. 任務/進度條JavaFX應用程序
- 21. 使用線程顯示進度條
- 22. 顯示進度條 - 以編程方式
- 23. javafx應用程序的進度指示
- 24. 設置進度,進度條
- 25. 減慢進度條進度
- 26. 進度條更新進度
- 27. 如何進度進度條
- 28. 轉換Swing的進度條了JavaFx進度
- 29. 用進度條顯示後臺任務的實際進度
- 30. 進度條顯示不準確的進度
你需要的,如果你想要的任何像樣的答案提供了很多詳細信息。 – pancho018
歡迎來到StackOverflow。我建議你花一些時間瀏覽本網站的[幫助頁面](https://stackoverflow.com/help),特別是關於[提問問題]的頁面(https://stackoverflow.com/help/問)。此論壇旨在提供*特定編程問題*的答案,通常最好的問題包含[MCVE]形式的代碼。在發佈之前,您應該研究您的問題,並創建一個示例來展示您嘗試解決問題的方法。你目前的問題實際上只是一個需求聲明,所以這是論壇的焦點話題。 –
@ Rishabh-Sharma我的答案是否適合你? https://stackoverflow.com/a/45867364/8087490。如果有效,你可以接受我的答案爲正確 – Developer66