Problema ao obter posição do mouse no label

Eai galera blz?

Bom, estou com um problema aqui que não consigo solucionar de jeito nenhum!!!
no meu programa, tem um frame … adicionei ao frame um jlabel, para exibir uma imagem … até aqui blz …
depois, eu fiz o mouseListener, para obter a posição do mouse quando o usuário clica na imagem, ou mais especificamente, no label …
o problema é que não obtem a posição do mouse de forma correta … por exemplo, quando eu clico no meio de uma imagem de tamanho 700 x 655, a posição obtida é 2 x 63 O_o
alguém poderia me ajudar ?

No código abaixo, adiciona uma imagem no label …e adiciona o label no frame.

		ico = new ImageIcon("caminho da imagem");
		
		label.setIcon(ico);
		frame.add(label);
		frame.setVisible(true);
		frame.pack();

Realiza o mouseListener para obter a posição do mouse, porem esta não é obtida de forma correta …

	    label.addMouseListener(
	    		new MouseListener() {
					public void mouseClicked(MouseEvent e) {
							posX = e.getX();
							posY = e.getY();

fico no aguardo de respostas,
grato pela atenção,
t+

Pessoal,

vi aqui e o problema não está no clique e sim na matriz de pixels!
Não sei pq.
segue o método inteiro do mouseListener que eu fiz:

	    label.addMouseListener(
	    		new MouseListener() {
					public void mouseClicked(MouseEvent e) {
							posX = e.getX();
							posY = e.getY();
							
							pix1 = matC[posX][posY];
					}
					
					public void mouseEntered(MouseEvent e) { }
					public void mouseExited(MouseEvent e) {	}
					public void mousePressed(MouseEvent e) { }
					public void mouseReleased(MouseEvent e) { }
	    });

O erro que aparece é: Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 692.

Eu sei o que quer dizer esse erro … seria pq está passando do limite da matriz … sei disso … mas nao sei pq … alguém tem alguma idéia ?
para obter os pixels da matriz, eu retornei ela de uma classe: matC = objeto.getMatrizPixels();
eu imprimi esse matC e imprimiu certinho … nao sei qual o problema.