マウスのドラッグで範囲選択をするときに、どこからどこまで選択しているかわかるようにしたい。
ということで、以下の二つをやったのでメモ。
① 画像を表示
ローカルにある画像をBufferedImage変数に読込む。
Paintメソッドをオーバーライドし、drawImageで読込んだ画像を表示する。
② ドラッグ中の枠線を表示
まず、画像を表示するJPanel自体がマウスイベントに気づくようにする。
インスタンス自身へのイベントの登録(addMouselistenerとか)。今回はコンストラクタ内でやってます。
次に、MouseInputListenerの実装。
マウス押下、マウスドラッグ、マウス離したときの3つのイベントを実装する。
マウス押下したら、描画する枠線の原点(左上)の座標を変数に格納。
マウスドラッグしたら、枠線の終点(右下)の座標がわかるので、枠線(四角形)の幅と高さを変数に格納。格納したら再描画。
マウス離したら、ドラッグ中に描画した枠線を消す。
以下、ソースです

0 件のコメント:
コメントを投稿