Boa tarde amigos,
Estou com um probleminha na minha aplicação, então reproduzi meu probleminha num exemplo pequeno, pra poder testar. Não reparem nas telas, como falei, se trata de um exemplo.
Bem, eu tenho meu JFrame chamado Main:
[img]http://www.gznet.com.br/boo/guj/centraPanel/main.JPG[/img]
No qual tenho o seguinte construtor:
public Main() {
initComponents();
Form form = new Form(panel);
}
E tenho meu JInternalFrame chamado Form:
[img]http://www.gznet.com.br/boo/guj/centraPanel/form.JPG[/img]
No qual tenho o seguinte construtor:
public Form(JPanel panel) {
initComponents();
this.setLocation(-5,-25);
this.setVisible(true);
try {
this.setSelected(true);
} catch (PropertyVetoException ex) {}
panel.add(this);
panel.setPreferredSize(new Dimension(((Double)this.getSize().getWidth()).intValue()-5-5,((Double)this.getSize().getHeight()).intValue()-25-5));
int larguraPai = panel.getParent().getSize().width;
int alturaPai = panel.getParent().getSize().height;
int largura = panel.getSize().width;
int altura = panel.getSize().height;
panel.setLocation((larguraPai-largura)/2,(alturaPai-altura)/2); // NÃO FUNCIONA!!!
panel.repaint();
}
No final, obtenho o seguinte resultado:
[img]http://www.gznet.com.br/boo/guj/centraPanel/rodando.JPG[/img]
Isso é QUASE o que eu queria. Eu queria que ele centralizasse o JPanel que eu usei pra colocar o JInternalFrame dentro. Mas não consigo! Eu assinalei no código acima a linha em que eu estou mandando centralizar. Já coloquei valores fixos naquele comando pra ver se o problema era com minhas contas, mas que nada! Ele não obedece o setLocation.
Por favor, alguém pode me ajudar?!
Grata

