Swing: load project
Jeg har en Swing-applikation i Netbeans 6.9, hvori jeg er ved at konstruere en "load project"-funktion.Et projekt er gemt i en dat-fil, som jeg indlæser i programmet (med succes). Når de læste data så skal omsættes til noget visuelt, går det galt - så sker der ikke rigtig noget andet at alle komponenterne forsvinder.
Projektet er opbygget således:
Form StandaloneJFrame
->Other components
->[JFrame]
-->jPanel1
--->jLayeredPane
---->jPanel
----->Alle mine komponenter
---->jLabel12
jLabel12 kan dynamisk flyttes rundt på skærmen, hvorfor den står for sig selv under jLayeredPane (det ligger i DRAG_LAYER).
Jeg har forsøgt med forskellige tilgange for at løse problemet. Bl.a.:
a)
Frame[] a= StandaloneJFrame.getFrames();
a[0].validate();
virker ikke
b)
initComponents();
virker ikke
c)
super.invalidate();
super.validate();
virker ikke
d)
jLabel12.invalidate();
jLabel12.validate();
virker ikke. Men når musen bevæges hen over nogle af komponenterne, bliver disse pludselig renderet.
e)
invalidate();
validate();
virker ikke
f)
jLabel1.validate();
jLabel12.validate();
viker ikke
g)
jLayeredPane2.setVisible(true);
jLayeredPane2.repaint();
virker ikke
h)
Graphics g=this.getGraphics();
super.paintComponents(g);
virker ikke
i)
((JComponent)getContentPane()).revalidate();
virker ikke
j)
this.getContentPane().invalidate();
this.getContentPane().validate();
virker ikke
k)
jLabel12.setBounds(710, 365, 28, 28);
virker for det ene komponent. Skal dette så gøres for alle komponenter? Det virker noget omsonst, og der er garanteret en smartere måde, at opnå det ønskede på. Derfor dette spørgsmål :-)
(som det nok kan ses, har jeg forsøgt at løse problemet med spredehagl, men jeg mangler stadig at se lyset...)
