Pessoal.
Não deu tempo de ninguem responder.
Resolvido, vou postar para quem tiver a mesma dúvida.
[IMG]http://i64.photobucket.com/albums/h196/lucasrpasquetto/janelas_zpsd50fe3e2.jpg[/IMG]
Solução:
1) Crie um menu de forma dinâmica na sua classe:
JMenu jMenuJanelas = new JMenu("Janelas");
2) No construtor adicione o menu à barra de menus:
3) Crie um método na classe principal responsável em abrir as janelas no seu MID onde recebe como parâmetro o JInternalFrame a ser aberto, dentro dele vc cria um JMenuItem com o nome do seu frame a ser aberto e adicione uma Action para ele jogar para frente a sua janela quando clivar no item do menu:
public void abreJanela(final JInternalFrame frame)
{
JMenuItem itemMenu = new JMenuItem(frame.getTitle());
itemMenu.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
jMdi.moveToFront(frame);
frame.requestFocus();
}
});
try
{
jMdi.add(frame);
jMenuJanelas.add(itemMenu);
}catch(Exception e){
}
}
4) Crie um método para remover a janela na classe principal:
public void removeJanela(JInternalFrame frame)
{
for(int i=0;i<jMenuJanelas.getItemCount();i++)
{
if(jMenuJanelas.getItem(i).getText().equalsIgnoreCase(frame.getTitle())){
jMenuJanelas.remove(i);}
}
}
5) Adicione um evento na sua JInternalFrame para quando fechar, remover da lista a janela:
private void formInternalFrameClosing(javax.swing.event.InternalFrameEvent evt) {
// TODO add your handling code here:
SUACLASSEPRINCIPAL.removeJanela(this);
}
Finishhh :)
Até mais pessoal!>>>