aspose file tools*
The moose likes Swing / AWT / SWT and the fly likes Drawing a selection box using swing Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » Swing / AWT / SWT
Bookmark "Drawing a selection box using swing" Watch "Drawing a selection box using swing" New topic

Drawing a selection box using swing

luk luka

Joined: May 09, 2011
Posts: 1
I have written an application with a panel and three buttons. I want to add selection this buttons using the mouse. I mean like we have in Windows on the Desktop. I press the left mouse button and with the movement of the mouse the area selection is growing.

Is there a specific interface in this or do I have it manually call the appropriate methods for event listeners and there draw transparent rectangle? Here is a picture:

So I have a problem when I paint rectangle using event mouse-dragged, button is repainting so user see blinking button. I want to this button don't disapear when I paint rectangle. I think that I need to use glassPane. This is my conception. I have a frame. In frame I add panel with button and I need another panel where I will paint transparent rectangle. I am thinking then my button will not be still repainting. What do you think about this conception. Or maybe someone have another idea. This is code:

I know that code is no perfect but almost work. I have a little problem. When I press the mousebutton and dragging my button disapear.

I don't need advise like "your code is wrong". I know that and I want to somebody help me what I must correct. I know that I shouldn't use paintComponent() in mouseEvents but only that way I can paint transparent rectangle. Or maybe you can othet idea how I can draw transparent rectangle. I try and try and I think that i must change mouseDragged method. because when I delete code from this method and only draw rectangle over a button all is ok. But problem is when I need draw rectangle by dragging mouse. I should change paint but I don't have idea how. I need some ideas how I can solve my problem. Maybe I should use glass pane?
Darryl Burke

Joined: May 03, 2008
Posts: 4523

Hi luk luka and welcome to the Ranch!

You have totally ignored my advice given several hours ago in your cross post at

I see you have also cross posted this to SO

Please BeForthrightWhenCrossPostingToOtherSites !

edit One more cross post with the same advice

luck, db
There are no new questions, but there may be new answers.
It is sorta covered in the JavaRanch Style Guide.
subject: Drawing a selection box using swing
Similar Threads
clickable line
Using mouse clicks to draw on a JFrame, problem probably with coordinates
how to highlight(change color) of the button and its neighbours when it is clicked
How to make rectangle drawn to be vissible when a new rectangle is drawn
drawing arrows