# Panel Mouse Kollisionabfrage



## Feeder (31. Okt 2014)

Hey ich habe hier ein kleines Problem kann mir aber nicht vorstellen warum meine Kollisionsabfrage scheitert., wenn ich auf dem Panel drücke:


```
//ausgelöst durch ein MouseClickEvent
public static boolean isclick(Point pos, JPanel panel) // pos = Mouseposition{
			Point p = new Point(panel.getX(), panel.getY());
			SwingUtilities.convertPointToScreen(p,panel);
			if(p.getX() > pos.getX()){
				if(p.getX() + panel.getWidth() < pos.getX()){
					if(p.getY() > pos.getY()){
						if(p.getY() < pos.getY() + panel.getHeight()){
							return true;
						}
					}
				}
			
			
		}
			return false;		
	}
```


----------



## Joose (31. Okt 2014)

Was ist deine konkrete Frage? 
Hast du dir schon die Werte im Log bzw. der Konsole ausgeben lassen? 
Dein Fehler liegt glaub ich im 2. und 4. if -> logischer Denkfehler


----------



## Feeder (31. Okt 2014)

also 2 war falsch, aber es ist immer noch nicht die Lösung. Ich versuche ein JPanel als Button zu ersetzten weil mir missfällt das der Button so statisch ist. Wenn meine Mouse auf das Panel klickt soll etwas passieren. Und meine Methode liefert true und false zrück. Also wo ist mein Codefehler außer dieser


----------



## Feeder (31. Okt 2014)

Ach halt !!! Happs danke


----------



## Joose (31. Okt 2014)

Feeder hat gesagt.:


> Ach halt !!! Happs danke



Bitte poste doch die Lösung!


----------



## Feeder (31. Okt 2014)

```
package greenblack.gui.clicks;

import java.awt.Point;

import javax.swing.JPanel;
import javax.swing.SwingUtilities;

public class CollsionTester {
	
public static boolean isclick(Point pos, JPanel panel){
		// pos = Mouseposition
		Point p = new Point(panel.getX(), panel.getY());
		SwingUtilities.convertPointToScreen(p,panel);
		if(pos.getX() < p.getX()){
			if(pos.getX()  < p.getX() + panel.getWidth()){

				if(pos.getY() < p.getY()){

					if(p.getY() > pos.getY() + panel.getHeight()){

						return true;
					}
				}
			}
		 
		 
		}
			return false;	
		}
}
```


----------

