speedi Geschrieben 8. April 2010 Geschrieben 8. April 2010 So langsam werd ich echt blöd hier. Ich wollte einem JDesktopPane als Hintergrund eine bedienbare Karte(eine komplette Komponente mit MouseListenern etc...) geben. Damit die JDesktopPanes über dieser liegen habe ich dann einfach die add(Component comp) überschrieben, so dass die Componente dort immer an oberster Stelle eingefügt wird (es sei denn es handelt sich um die Karte - die ist immer an niedrigster Stelle). Soweit funktioniert das auch ganz gut, allerdings in dem Moment wo ich ein JInternalFrame minimiere wird das entsprechende JDesktopIcon erstmal nicht angezeigt, solang bis ich an die Stelle klicke wo es sein sollte (dann tauchts auf). Hab auch schon versucht das teil repainten zu lassen - negativ. Wie würdet ihr das angehen, wenn ihr eine Komponente als Hintergrund eines JDesktopPanes setzen wollt? Source-Code: desktop = new JDesktopPane(){ @Override public Component add(Component comp) { if(comp == viewer){ return super.add(comp,getComponentCount()); }else{ return super.add(comp,0); } } }; viewer = new GeoViewPanel(); desktop.add(viewer,desktop.getComponentCount());
speedi Geschrieben 8. April 2010 Autor Geschrieben 8. April 2010 Hat sich erledigt. Die moveToBack(Component c)- und moveToBack(Component c)-Methoden des JDesktopPanes hatten offenbar ihr freude daran mir meine paint-Reihenfolge zu versauen indem sie die JDesktopIcons hinter die Map schieben.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden