Problemas com JInternalFrame (Erros Muito Loucos)

Estou fazendo uma aplicação onde eu uso JInternalFrames, so que tem um problemão !!!, eu declarei o JDesktopPane como uma variavel de escopo publica, e ele simplismente não aceita ele fala o seguinte:

sicla/gui/Main.java [52:1] non-static variable Desktop cannot be referenced from a static context
Desktop = new JDesktopPane();
^
sicla/gui/Main.java [53:1] non-static variable Desktop cannot be referenced from a static context
Desktop.setBackground(frmSistema.getBackground());
^
sicla/gui/Main.java [93:1] non-static variable Desktop cannot be referenced from a static context
pnlSistema.add(“Center”, Desktop);
^
se eu declaro ela dentro da função main ocorre o mesmo erro so que dentro do actionPerformed do controle, ai fiz uma gambiarra determinei que Desktop era final e declarei ela dentro da função main funcionou legal, so que da outro erro:

sicla/gui/Main.java [188:1] non-static method DesktopExist(javax.swing.JInternalFrame[]) cannot be referenced from a static context
if(!DesktopExist(Desktop.getAllFrames())) {
^
dentro do seguinte codigo:

                mnuCadUsuarios.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {                           
                            CadUsuario frmUsuario = new CadUsuario();
                            if(!DesktopExist(Desktop.getAllFrames())) {
                               Desktop.add(frmUsuario);
                               frmUsuario.show();
                            }   
                        }
		});

DesktopExist e uma função minha que retorna se o JinternalFrame esta aberto.
diz ai galera como eu resolvo esse impesilho !!! rsss
:cry:

falow

declare o JDesktopPane como static…

Você não pode criar/usar uma variável não static (como é o caso do seu JDesktopPane) em um método static … eu costumo resolver isso setando o contentPane do Frame como sendo o JDesktopPane no construtor da classe …