看板 java 關於我們 聯絡資訊
各位版友好 我是用JFrame,我有一個button 按下之後,Button會disable, 然後有一個label會setText,顯示某一段文字 接著執行一個執行時間滿長的function, 簡單來說就是我按下button之後->setText->執行function 可是我按下之後,button還是顯示按下的外觀的,而且我還是可以按, 等到function執行完之後他就會再重新做一次... 而且按下之後,label沒有setText 奇怪的是我把function註解掉之後,變成按下 button->setText 反而是正常的 因此想問一下為什麼會這樣? 謝謝 -- ~宅男的四個徵兆~ ∠□ ○ ! * \○/ ★    (○ ? ╦╦└□ " ○□═ □   □> ║║√√ ╦══╦ ∥    |\ 一回家就上PTT 每天想正妹 以當好人為樂 忘記正妹虧欠自己 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.173.174.215 ※ 編輯: Arim 來自: 218.173.174.215 (08/13 12:55) ※ 編輯: Arim 來自: 218.173.174.215 (08/13 12:56)
KanoLoa:因為要等function跑完才會更新UI,#1AHoSjmJ 08/13 14:00
fireslayer:高負載的func不要在UI thread執行 08/13 22:47
starengine:搜尋SwingUtilities.invokeLater()和invokeAndWait() 08/21 00:05
starengine:ui顯示和function執行要用不同執行續去處理才會正確。 08/21 00:07