Salve ragazzi,
ho creato un JPanel che implementa ComponentListener.
public class MainPanel2 extends JPanel implements ComponentListener{
.....
....
ovviamente ho dovuto scrivere anche i metodi
codice:
public void componentHidden(ComponentEvent e) {
// TODO Auto-generated method stub
}
@Override
public void componentMoved(ComponentEvent e) {
// TODO Auto-generated method stub
}
@Override
public void componentResized(ComponentEvent e) {
// TODO Auto-generated method stub
reseizeComponent(this.getSize());
}
@Override
public void componentShown(ComponentEvent e) {
// TODO Auto-generated method stub
}
ho implementato solo il metodo componentResized.
In pratica ogni qual volta ridimensiono il JPanel, vorrei ridimensionare alcuni componenti.
il metodo resizeComponent è questo:
codice:
public void reseizeComponent(Dimension d){
dTabella = new Dimension();
dTabella.setSize(dimensioneComponenti.jScrollPane2(d));
jScrollPane2.setPreferredSize(dTabella);
jScrollPane2.setViewportView(ricetteTabella);
jScrollPane2.getViewport().add(ricetteTabella);
fonButtonT = new Font("Century Gothic",Font.PLAIN, 5);
ricetteTabella.setFont(fonButtonT);
getRootPane().validate();
getRootPane().repaint();
jScrollPane2.revalidate();
jScrollPane2.repaint();
ricetteTabella.validate();
ricetteTabella.repaint();
ricetteTabella.updateUI();
panel1.repaint();
System.out.println("metodo preso "+d);
}
allora passo la dimensione nuova del JPanel è questa è corretta.
Poi ridimensiono un jScrollPane2 che contiene un jtable. il quale dovrebbe rimpizziolirsi ma questo non accade il metodo viene eseguito senza generare errori però non cambia nulla.
cosa sbaglio?