質問: e.getY(); repaint(); } @Override public void mouseReleased(MouseEvent e) { // TODO 自動生成されたメソッド・スタブ } @Override public void mouseEntered(MouseEvent e) { // TODO 自動生成されたメソッド・スタブ } @Override public void mouseExited(MouseEvent e) { // TODO 自動生成されたメソッド・スタブ } ```
回答: エラー文がないのでエラー発生の原因には触れませんが、リンク先の補足と やりたいことの方向性を示します。 ### リンク先の補足 リンク先ではドラッグしたルートに沿って描画されています。 これはマウスカーソルの位置がまんま描画位置だから可能なのです。 `mousePressed()`と`mouseDragged()`は内部は同じコードですよね? マウスカーソルの位置をそのまま描画位置としているためです。 ### やりたいことの方向性 直線を書きたいということですが、おそらくサンプルをいじるだけでは無理でしょう。 直線は「マウスボタンを押下した位置」と「マウスボタンを離した位置」という情報が揃うことで 描画する準備が整ったという感じになります。 ドラッグ中に描画処理をしてしまうと動くたびに描画されてしまうので、ぐちゃぐちゃになります。 なので「マウスボタンを押下したとき」にその位置(A)を記憶し、「マウスボタンを離したとき」に 離した位置とAの位置で「直線」の描画を行うべきです。 ドラッグ中も仮描画の線を表示したいというのであれば、XORModeというものを調べてみてください。