線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:919
推到 Plurk!
推到 Facebook!

請問為何執行緒沒作用?謝謝

答題得分者是:neoart
kagaya
中階會員


發表:74
回覆:175
積分:59
註冊:2002-12-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-27 12:34:41 IP:211.76.xxx.xxx 未訂閱
程式碼如下.目的是利用執行緒使圖片可以反覆移動 但測試時並不會移動.我實再看不出來是哪邊出錯了... 希望能有高手大大可以教我一下.謝謝 package k3; import java.awt.*; import java.awt.event.*; import java.applet.*; public class Applet1 extends Applet implements Runnable { Image i1; Thread th1; int kk; public void init() { i1=getImage(getCodeBase(),"001.jpg"); //載入圖片 this.setLayout(null); } public void start(){ th1=new Thread(this); //創造並啟動執行緒 th1.start(); } public void stop(){ th1.stop(); } public void run(){ if(kk>0){ kk=0; }else{ kk=50; } repaint(); try{ th1.sleep(1000); //間隔1秒 }catch(InterruptedException e){} } public void paint(Graphics g){ g.drawString(Integer.toString(kk),150,20); g.drawImage(i1,kk,kk,100,100,this); } }
------
KUSO 無處不在
neoart
版主


發表:22
回覆:582
積分:425
註冊:2003-05-09

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-28 11:18:14 IP:61.64.xxx.xxx 未訂閱
請把你run的內容包永恆的迴圈: ex: public void run(){ while(true){ //你的執行內容及thread的sleep // } }
kagaya
中階會員


發表:74
回覆:175
積分:59
註冊:2002-12-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-28 19:21:47 IP:211.76.xxx.xxx 未訂閱
雖然不了解為何要多這個while.但試成功了 (執行緒start以後不就會一直run嗎?還要籍助while?) 高手就是高手.我找了一個多小時還是找不出問題在哪 neoart大大兩三下就ok了.真是太強了 感謝
------
KUSO 無處不在
neoart
版主


發表:22
回覆:582
積分:425
註冊:2003-05-09

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-28 22:16:36 IP:61.56.xxx.xxx 未訂閱
kagaya 桑: 叫小弟高手,真的是太沈重了.我也只是java用久的programmer罷了. 執行緒這東西你可能要翻一下書了.一言難盡. 改天你的大作做好之後,麻煩借玩一下囉.
系統時間:2024-05-18 14:32:05
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!