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()); Zitieren
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. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.