Re: [問題] 有關用SetXORmode且doublebuffer開了螢뤠…
※ 引述《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
java 近期熱門文章
PTT數位生活區 即時熱門文章