Solved

code for displaying an image and identifying clicks on it

Posted on 2001-06-07
10
229 Views
Last Modified: 2010-08-05
hi.

i need - URGENTLY - a specific code for displaying an image and mapping a click on it.

i need to diaplay teh image on screen, identify the clicks of the user upon it, and map the location of the click (pixel?coordinates?ideas?).

the more specific the code the better.

thanks for your help, Adih
0
Comment
Question by:Adih
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 2
  • 2
  • +1
10 Comments
 
LVL 1

Accepted Solution

by:
eattrig earned 150 total points
ID: 6164233
import javax.swing.*;
import java.awt.event.*;

public class ClickPoint extends JDialog
{
    public ClickPoint()
    {
        Icon image = new ImageIcon("yourImage.gif");
        JLabel label = new JLabel(image);
        label.setSize(image.getIconWidth(), image.getIconHeight());
        label.addMouseListener
        (
            new MouseAdapter()
            {
                public void mouseClicked(MouseEvent e)
                {
                    System.out.println(e.getPoint());
                }
            }
        );
        this.setSize(image.getIconWidth(), image.getIconHeight() + 30);
        this.getContentPane().setLayout(null);
        this.getContentPane().add(label);
        this.setVisible(true);
    }

    public static void main(String[] args)
    {
        ClickPoint c = new ClickPoint();
    }
}


Is this what you wanted???  This will output the point which has been clicked.
0
 
LVL 2

Author Comment

by:Adih
ID: 6164412
please dont lock the question by answering but give chances to every1 to see it.

maybe i didnt explain myself.

i need to MAP the clicks.

i need to turn to the same spot on another bitmap to retreive information.

the coordinate system can work if i knew how to access the bitmap using it.

Adih
0
 
LVL 2

Author Comment

by:Adih
ID: 6164502
eattrig:
i used the code given and accessed the gif and retreived the coordinates required, now-
I NEED TO GET THE VALUE OF A PIXEL FROM ANOTHER GIF AT THOSE COORDINATES.

please issue a code to do that and the A grade of 300 pts is yours.
0
Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

 
LVL 1

Expert Comment

by:eattrig
ID: 6164966
what type of information do you need to get from the other bitmap?
0
 
LVL 2

Author Comment

by:Adih
ID: 6165105
each pixel at the gif is colored in a specific value.

i need to extract that value.

if a user clicked on the map at (12,34) i need to retreive the color of the pixel at those coordinates at the other gif.

adih
0
 
LVL 92

Expert Comment

by:objects
ID: 6172410
You need to use the PixelGrabber class to extract the pixel values. Let me know if you need some help with it.
0
 
LVL 2

Author Comment

by:Adih
ID: 6172875
i never used that class and this is VERY urgent, so i would appreciate some specific code on extracting the pixel value at a apecific (x,y) coordinates.

the question is not so hard, but since it is URGENT i gave it 300 pts!

please be quick with the answer, and u shall be rewarded.

adi.
0
 
LVL 92

Expert Comment

by:objects
ID: 6172908
adi,

I'm just about to knock off for the day but here goes:

i is the image
w is the image width
x,y is the location of the pixel of interest

int pixels[] = new int[1];
PixelGrabber pg = new PixelGrabber(i, x, y, 1, 1, pixels, 0, w);
pg.grabPixels();
if ((pg.getStatus() & ImageObserver.ABORT) == 0)
{
  // The value of the pixel should now be in pixels[0]
}

You can use this to grab any rectangular region out of the image, placing the pixel data into the pixels array.

Sorry I can't hang around to help you further but you should be right. Check the javadoc for PixelGrabber if you're confused about anything. ANd I think it's also covered in Sun's Java tutorial.

I'll check how you went in the morning.


0
 

Expert Comment

by:teacher_mod
ID: 6173530
I have reduce to points to 150 to enable a split.

teacher_mod
Community Support Moderator
Experts-Exchange
teacher_mod@experts-exchange.com
0
 
LVL 2

Author Comment

by:Adih
ID: 6173955
thanks guys.

with ur answers combined i managed to solve the prob.

150 pts for eattrig - grade A
150 pts for objects will be awarded in a new 150 pts question:
http://www.experts-exchange.com/jsp/qManageQuestion.jsp?ta=java&qid=20132788

thank u, Adih
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
Introduction Java can be integrated with native programs using an interface called JNI(Java Native Interface). Native programs are programs which can directly run on the processor. JNI is simply a naming and calling convention so that the JVM (Java…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
Suggested Courses

617 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question