Re: [問題] JPanel顯示Graphics的問題

作者: morris282 (morris)   2014-05-25 04:20:06
※ 引述《cicada930614 (喜加達)》之銘言:
: 各位好,初次在JAVA版發文
: 如有疏漏煩請指正,感謝
: 小弟最近在練習寫2048,我將整個遊戲切成
: Game:遊戲主體,主要判斷遊戲開始/結束和輸贏判定
: gameBoard:遊戲盤
: Tile:字板
: https://github.com/cicadandrew/JAVAfinal2048
: github
: 小弟現在遇到的問題在於,GameBoard的圖像無法顯示
: 我嘗試過將gameBoard extends JPanel並進一步覆寫paint
你新建一個JFrame叫做window,然後加入一個繼承自JPanel類別的game,
那你的GameBoard這個類別到底是什麼用途?
是專門負責處理繪圖功能?還是他也算是一個元件?
為什麼你把GameBoard類別繼承JPanel然後加入game之後就看得到圖,
因為這時候GameBoard就是一個元件了,裡面的操作應該就是畫在這個新元件上。
既然你放棄把gameBoard當作一個JPanel,那這個時候圖應該要畫在哪個元件上?
: 結果圖出現,但位置卻被強制置中
: 而將Tile和GameBoard的畫圖一併寫入Game之中,但我不想讓Game太肥
: 而在creatImage中置入System.out.println("check")
: 我發現該段有被執行,但圖卻不如預期出現
: 請問是我對JFrame/ JPanel 和畫圖的過程中有什麼錯誤的使用嗎?
: 我自認邏輯上沒問題,但無法解決這問題
: 謝謝各位高手解惑,感激不盡
作者: sbrhsieh (十年一夢)   2014-05-25 13:33:00
他把 JPanel 當作 Canvas 來使用。
作者: sbrhsieh (十年一夢)   2014-05-25 14:05:00
以高頻率在 Canvas 上繪出遊戲(world)的狀態。
作者: sbrhsieh (十年一夢)   2014-05-25 14:09:00
這種做法稱 active rendering

Links booklink

Contact Us: admin [ a t ] ucptt.com