Re: [問題] 有關用SetXORmode且doublebuffer開了螢뤠…

看板java作者時間19年前 (2006/06/14 03:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
※ 引述《QQ29.bbs@ptt.cc (Mr.Q)》之銘言: : 請問板上各位大大 : 我寫一個小畫家程式 : 使用這種寫法 : 發現螢幕閃爍問題 把doublebuffer打開也是一樣閃 : 請問是什麼原因呢?? : 我設定的是 當成畫布的JPanel , 請問識不是還有別的地方也要設定doublebuffer : 還是說本來就會閃爍呢 ? 謝謝 : 請各位給我一點提示吧^^ : 以下是程式片斷 : //drag事件內容/// : public void mouseDragged(MouseEvent e) //drag發生則click必不發生. : { : Graphics2D gg=(Graphics2D)graphpanel.getGraphics(); : graphpanel.setDoubleBuffered(true); //doublebuffer開啟 為繼承JPanel的class(為了方便大家檢視,所以在這邊刻意call緩衝設定) graphpanel.setDoubleBuffer(true); 只要在產生出 graphpanel 物件後設定一次就可以了吧... : gg.setXORMode(Color.white); //設定XORMode : gg.setColor(colr); : gg.setStroke(mypen); : if (line.isSelected()) : { : gg.draw( new Line2D.Double(Origin.x,Origin.y,End.x,End.y)); : End.setLocation(e.getX(),e.getY()); : gg.draw( new Line2D.Double(Origin.x,Origin.y,End.x,End.y)); : } : ///////////////////////////////以下省略////////////////////////////////// -- 未來最舊小棧 Oldest Future Object █▇█˙通訊頻率 OfO.twbbs.org ◢▉◤ ◆來源座標 sparc13.cc.ncu.edu.tw
文章代碼(AID): #14ZnAz00 (java)
文章代碼(AID): #14ZnAz00 (java)