swingworker

    0熱度

    2回答

    在我的應用程序中,我有一個主框架窗口GUI,它啓動executor服務中的任務。 提交的任務generates輸出和存儲in a file on Disk。 o/p一旦生成GUI(觀察者)被通知生成的o/p。 這裏的問題是我在主框架內部保持一個等待循環,並且一旦收到通知,主面板就會在主框架上重新繪製。 對於小任務,這可以很好地工作,但隨着線程任務的大小增加。等待循環時間增加,GUI主窗口變黑,直到

    3熱度

    3回答

    所以我剛剛進入秋千工人,我不知道如何阻止它我試圖這boolean方式。它不工作,你可以編輯我的代碼的方式,它會工作或什麼的!非常感謝! 沒有錯誤顯示它只是不停止! class MessageBox { public static void infoBox(String infoMessage, String location) { JOptionPane.show

    0熱度

    1回答

    我有一個SwingWorker,打開ServerSocket,然後在服務器套接字上調用.accept()。大多數情況下,該線程在撥打accept()時被阻止。在某個時候,我想取消線程。問題在於工作線程被accept()調用阻塞。有沒有一種機制可以「解除」這個調用並調用一些關機代碼? 目前我打電話mySwingWorker.cancel(true),並聽我的PropertychangeListene

    -1熱度

    2回答

    我需要關注JTextField。應用程序使用Swing庫。我需要不時重點關注該領域,以避免用戶的錯誤將焦點轉移到其他組成部分。我想我需要使用SwingWorker。設置焦點是Swing 組件上的操作,因此它應該在EDT中調用。我的問題是如何編寫SwingWorker來做到這一點? 我知道方法done()傳遞要在EDT中調用的任務,但我需要每調用一次這個任務2秒。方法done()被稱爲一次。所以也許

    0熱度

    1回答

    我有一個帶有按鈕和其他控件的主GUI類。 當其中一個按鈕(比如說btnGo)被選中時,它將被禁用,並啓動一個SwingWorker(當前是不同類的一部分)來執行某些操作。 我希望在SwingWorker完成時再次啓用該按鈕。 如何讓我的「孩子班」(缺乏更好的詞)更新我的主要GUI類中的控件?

    1熱度

    1回答

    我想建立一個JFrame能夠運行一個後臺任務每次JButton被點擊。當前我正在使用一個swing工作人員,它不會允許任務被執行多次。 我怎樣才能啓用SwingWorker與JButton點擊重複任務。 public class ScanFileFrame extends JFrame{ JButton btnTicking; JLabel label1; Sca

    0熱度

    1回答

    我在學習Java線程時遇到了這個問題:對於有兩名工作人員的Swing應用程序,EDT正在等待GUI事件,並且兩名工作人員都在等待。這被認爲是一個死鎖的應用程序? 我覺得這不像「空閒狀態」,當應用程序正在等待用戶輸入時非常相似。但如果不是,這種情況是什麼?美國東部時間正在等待,兩名工人正在運行?

    1熱度

    1回答

    我想獲取網頁的源代碼,但是當我這樣做時,UI會凍結。我甚至使用過SwingWorker,但沒有奏效。這裏是一個SSCCE: import java.awt.Dimension; import java.awt.HeadlessException; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;

    1熱度

    2回答

    我試圖更新進度條,但我無法做到。我的代碼是這樣的: public class MyWorker extends SwingWorker<Void, Void> { public Void doInBackground(){ howMany=Integer.parseInt(textField.getText()); String result=longMetho

    1熱度

    1回答

    我有一個類創建一個GUI並且帶有ItemListener的JComboBox。在ItemEvent.Selected事件中,我創建了工作人員並嘗試將數據讀入地圖,但內容始終爲空。 我的猜測是,這是由於線程在線程完成前執行並離開ItemListener而發生的。 我已經添加了我的代碼的相關部分,並希望你們可以幫助我確定問題所在。 private void updateUI(String text)