View Full Version : [java] problema visualizzazione internalframe
pumppkin
16-01-2007, 16:07
Ciao, ho il seguente problema:
ho un editor di immagini con al centro un pannello dove vengono visualizzate delle canvas(rettangoli, triangoli ecc..)...in questo editor ho anche una toolbar dove, cliccando su un bottone, mi si apre una piccola jinternalframe dove mi da delle informazioni sulla canvas selezionata...tenendo aperta questa internalframe e andando a spostare una canvas nella zona dell'internalframe quest'ultima mi si cancella nella parte dove è presente la canvas..tutto questo ritorna normale quando sposto la canvas in un'altra posizione...
E' un problema che solitamente deriva dal mix di componenti heavyweight e lightweight.
Se il canvas di cui parli è un java.awt.Canvas, rimpiazzalo con un JPanel. Il passaggio è semplicissimo. Se hai una roba tipo:
public class MyCanvas extends Canvas {
public void paint(Graphics g) {...}
}
basta cambiarlo in:
public class MyCanvas extends JPanel {
public void paintComponent(Graphics g) { ... }
}
pumppkin
16-01-2007, 16:20
no purtroppo non sono canvas di awt ma utilizzo una libreria esterna per canvas di tipo svg....ho notato però che prima, quando il pannello che contiene le canvas era contenuto anch'esso in un internalframe questo problema non c'era (probabilmente perchè li andava in primo piano prima un'internalframe e poi un'altra)...mentre adesso che il pannello dove sono contenute le canvas si trova all'interno di un jpanel si viene a creare questo problema...
che libreria usi per svg?
pumppkin
16-01-2007, 16:35
batik...
Nel JInternalFrame che mostra le informazioni sul canvas che componenti ci sono? Tutta roba Swing o c'è qualche AWT?
Te lo chiedo perchè hai un problema di sovrapposizione che non dovrebbe verificarsi nel caso in cui non ci sia un mix di componenti AWT e Swing.
P.s.: puoi incollare uno screenshot del problema?
pumppkin
16-01-2007, 16:53
ti posto uno screenshot
http://img213.imageshack.us/img213/7613/editorqg7.th.jpg (http://img213.imageshack.us/my.php?image=editorqg7.jpg)
E quel JInternalFrame da dove salta fuori?
Cioè, se il JInternalFrame fa parte, come deve essere, di un JDesktopPane, il canvas svg dove sta? Sta sotto?
pumppkin
16-01-2007, 20:43
No, non utilizzo un jdesktopPane (anche se dovrei visto l'uso della jinternalframe) ma utilizzo come desktop un Jpanel...anche le immagini svg sono in un jpanel contenuto nel desktop
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.