Não abrir mais de uma vez o mesmo JInternalFrame

frmlocal = new frmcadcli();
frmlocal.setVisible(true);

Crio meu JInternalFrame assim
porem quando vou lá no menu e clico na opção novamente
ele abre outro JInternalFrame igual como posso tratrar isso
?

Eu fiz desta forma abaixo

if(desktopPane.getComponentCount() == 0){
Ativos ativo = new Ativos();
desktopPane.add(ativo);
ativo.show();
}		

Onde Ativos é uma class que extends de JInternalFrame.

Não dê new 2 vezes. Torne frmLocal um atributo e faça:

[code]
if (frmlocal == null) {
frmlocal = new frmcadcli();
}

frmlocal.setVisible(true); [/code]