全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1478
推到 Plurk!
推到 Facebook!

及時更新畫面

答題得分者是:neoart
Sephiroth105
一般會員


發表:13
回覆:5
積分:3
註冊:2003-05-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-20 12:33:44 IP:61.70.xxx.xxx 未訂閱
老問題 不好意思.... 在主要的JFrame上面有兩個繼承panel的物件drawPanel 假設是p1,p2 JFrame切割成左右兩部分JPanel: left宇right 我先將p1貼在left上面 drawPanel上實做了滑鼠事件 現在,當我click p1 的時候會更新p2的畫面 我把更新的這個動作寫在drawPanel的mouseClicked裡面 public void mouseClicked(MouseEvent e) { ....... ....... p2 = new drawPanel(xxxx); right.add(p2); right.repaint(); } 不過實際的結果,當我click p1的時候 p2的畫面沒有辦法即時的呈現在JFrame上 必須當JFrame有任何需要更新(repaint)的時候,p2的畫面才會貼上去 剛剛試著把 right.add(p2) 寫在JFrame的paint中 不過似乎出了很大的錯誤 請問我該怎麼寫才能在click之後馬上把畫面呈現出來?? 而不必等到frame的畫面更動才出現 請多指教~
neoart
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-20 15:55:17 IP:61.56.xxx.xxx 未訂閱
可以借看一下code嗎? 恕在下沒有閣下這麼聰明.可能會把問題想太複雜,就怕誤人子弟. 還是把圖貼上來一下?
Sephiroth105
一般會員


發表:13
回覆:5
積分:3
註冊:2003-05-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-09-20 22:24:51 IP:61.70.xxx.xxx 未訂閱
上面為初始畫面,且我已經點了畫面上其中一個node 產生了圖示在左邊的畫面上.. 但是並沒有馬上顯示出來 在更動了整個frame的邊框後 應該是畫面更新,左邊的圖這才顯示出來 假設我最後是把左邊畫面加在Frame的其中一塊Panel上面 叫做JPanel left 我目前是把我的drawPanel這class寫成整個Frame的內部類別 而在drawPanel的mouseClicked事件中 因為我每次click都會重新new一次我新產生的drawPanel物件 之後會移除目前left上的所有物件,並加上新產生的畫面 left.removeAll(); left.add(newPane); left.repaint(); //我想更新畫面,不過無效,必須整個畫面更動才有效 大致上是這樣 主要問題我不知道爲什麼沒辦法在click的時候就更新畫面?? 謝謝 ~~~
neoart
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-09-21 00:13:35 IP:61.56.xxx.xxx 未訂閱
Please Use "validate()" after repaint(),such as: =========================== : : right.repaint(); right.validate(); : : =========================== PS.你的專題看起來不錯玩的樣子,可以說一下那是什麼樣的東西嗎?
Sephiroth105
一般會員


發表:13
回覆:5
積分:3
註冊:2003-05-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-09-21 00:38:57 IP:61.70.xxx.xxx 未訂閱
謝謝~問題解決了~ 我們專題是做semantic web 的視覺化 讀了一份*.rdf之後,產生圖形呈現其關係,還有query功能 大概就是這樣. 以後有問題再來發問~感謝~
系統時間:2024-05-20 10:30:48
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!