JTabbedPane abrindo dinamicamente

Fala pessoal boa tarde.

Estou com uma dúvida, pensei em desenvolver um layout onde tenho uma JTabbedPane ou algo semelhante com os botões da minha aplicação e a cada solicitação fosse criada uma nova aba de acordo com a solicitação por exemplo:
Botão Cadastro de produto > abre aba com formulário de cadastro de produto.
Botão Cadastro de usuário > abre aba com formulário de cadastro de usuário.

Pelo que andei lendo pelo fórum eu deveria criar algo como um Gerenciador de Janelas ou nesse caso de Abas, encontrei essa thread >> http://www.guj.com.br/java/126498-apanhando-com-jtabbedpane | a necessidade é bem parecida… Porém não tem muitas informações sobre a solução e foi criada em 2003 :?

A solução do leonardom no tópico é bem interessante, mas ainda é vaga pra min, não tenho muita experiência, a minha idéia seria para que funcionasse assim, abas abrindo e fechando dinamicamente de acordo com um modelo. Tipo

Essa dúvida nasceu da intenção de desenvolver uma solução sem a utilização de Fóruns MDI já que não é recomendado e teria várias telas sendo abertas.
Ahh também não sou muito experiente com programação… Toda ajuda é bem vinda. :slight_smile:
Obrigado!

O tutorial oficial da Oracle tem uma excelente discussão sobre JTabbedPane:

http://download.oracle.com/javase/tutorial/uiswing/components/tabbedpane.html

Procure a seção “Tabs With Custom Components”, que dá um exemplo de como implementar abas que podem ser fechadas através de um botão “X” localizado na própria aba (o comportamento padrão de JTabbedPane não oferece esse recurso).

Legal, roger_rf

Obrigado pela atenção…

Mas sobre a forma da solução como mencionei você acha mais interessante ou prefere usar JDesktopPanel?

Sou meio inexperiente, gostaria da opinião de vocês.

Eu já usei JDesktopPane, mas hoje prefiro usar JTabbedPane, pois JTabbedPane aproveita melhor o espaço disponível. JDesktopPane também carrega o peso do passado, pois muitas aplicações antigas usavam interface MDI. Assim, usar JDesktopPane pode deixar a sua aplicação com um visual um tanto datado.