| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/06/2009 10:21:55
|
cidfillippe
Thread.start()
![[Avatar]](/images/avatar/746ac26956df2d6be2b2c66c26b62fda.png)
Membro desde: 04/08/2008 12:47:46
Mensagens: 45
Offline
|
Galera eu to com uma dúvida...
Eu criei um menu que quando clicado exibe um internal frame... Só que quando clico novamente ele exibe um novo internal frame...
É possível fazer com que ele exiba o internalFrame já aberto?
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/06/2009 10:24:31
|
Felagund
GUJ Master
![[Avatar]](/images/avatar/d8d855c465198499868fb2b566ebee8d.jpg)
Membro desde: 26/07/2006 11:51:36
Mensagens: 1732
Localização: Santa e Bela Catarina
Offline
|
vc tem que procurar o JDesktopPane se já existe um internalframe da mesma classe.
se existir vc não cria, se não vc cria.
[]'s
|
att
Rafael Felix
Rolling With Code
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/06/2009 13:19:06
|
filipenf
JavaBaby
Membro desde: 27/05/2009 12:47:07
Mensagens: 98
Offline
|
usa o pattern singleton ao invés de criar uma instância cada vez.
|
Você está bêbado quando começa a sentir solidariedade e não consegue pronunciar essa palavra.
Filipe N. Felisbino
SCJP - SCWCD - LPIC 1
fnf01.blogspot.com - twitter.com/filipenf
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2009 16:18:10
|
cidfillippe
Thread.start()
![[Avatar]](/images/avatar/746ac26956df2d6be2b2c66c26b62fda.png)
Membro desde: 04/08/2008 12:47:46
Mensagens: 45
Offline
|
Como posso usar este pattern singleton?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/06/2009 12:22:57
|
filipenf
JavaBaby
Membro desde: 27/05/2009 12:47:07
Mensagens: 98
Offline
|
dá uma pesquisada no google, este pattern é bem conhecido e difundido. coloca 'java singleton pattern' que vc acha.
|
Você está bêbado quando começa a sentir solidariedade e não consegue pronunciar essa palavra.
Filipe N. Felisbino
SCJP - SCWCD - LPIC 1
fnf01.blogspot.com - twitter.com/filipenf
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/06/2009 12:47:25
|
Felagund
GUJ Master
![[Avatar]](/images/avatar/d8d855c465198499868fb2b566ebee8d.jpg)
Membro desde: 26/07/2006 11:51:36
Mensagens: 1732
Localização: Santa e Bela Catarina
Offline
|
Nesse caso não acho vantagem usar o singleton.
A tela pode ser acessada uma única vez o o sistema ficar aberto o dia todo.
E essa tela nunca será coletada pelo Garbage, consumindo recursos de maneira descessesarias.
Nem todos os padrões devem ser aplicados sempre. E esse eu acredito que o singleton se torne um anti-pattern
|
att
Rafael Felix
Rolling With Code
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/06/2009 13:10:36
|
filipenf
JavaBaby
Membro desde: 27/05/2009 12:47:07
Mensagens: 98
Offline
|
Até concordaria com você se ele precisasse fazer isso em várias telas, mas pelo que entendi não é isso e ficar com a tela durante todo o tempo que a VM ficar aberta não seria um problema. Além disso, se ele quiser pode fazer algum mecanismo pra eliminar a reference dela ( tipo criar um killInstance ).
|
Você está bêbado quando começa a sentir solidariedade e não consegue pronunciar essa palavra.
Filipe N. Felisbino
SCJP - SCWCD - LPIC 1
fnf01.blogspot.com - twitter.com/filipenf
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 07:34:05
|
cidfillippe
Thread.start()
![[Avatar]](/images/avatar/746ac26956df2d6be2b2c66c26b62fda.png)
Membro desde: 04/08/2008 12:47:46
Mensagens: 45
Offline
|
Galera eu não posso conferir se o objeto é da mesma classe pq tem objetos que é da mesma classe mas são distintos... por exemplo tenho internalframe para add pessoas e outro para add livros... Aí fiz o seguinte...
Criei um método na classe que possui o desktoppane que add um novo internal frame que recebe como parametro o título e o JPane que ele adicionará...
e criei um método que remove o internal frame que possui o título que quero eliminar...
não sei se é uma boa prática mas ficou muito útil, já que os métodos são static posso adicionar e remover por qualquer que seja a classe de uma forma bem simples
Abraço
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 08:16:59
|
filipenf
JavaBaby
Membro desde: 27/05/2009 12:47:07
Mensagens: 98
Offline
|
Existem 1001 formas de se preparar nestom... heheheh
outra sugestão seria no frame que controla os InternalFrames vc ter um map que associasse um identificador da tela à instância do JFrame. Ou seja:
só que vc teria que criar a classe MyInternalFrame como sendo subclasse de JInternalFrame e criar um método tipo:
Desta forma, sempre que você criar uma tela, pode checar se ela já existe no mapa e, se não existir, criar e adicionar ela ao mapa.
|
Você está bêbado quando começa a sentir solidariedade e não consegue pronunciar essa palavra.
Filipe N. Felisbino
SCJP - SCWCD - LPIC 1
fnf01.blogspot.com - twitter.com/filipenf
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/07/2009 10:55:14
|
brlima
Moderador
![[Avatar]](/images/avatar/fc2c7c47b918d0c2d792a719dfb602ef.png)
Membro desde: 12/05/2003 14:03:38
Mensagens: 1537
Localização: São Paulo - SP
Offline
|
essa idéia do filipenf é boa. mas não precisa extender. pode usar a propriedade setName() pra setar o nome e coloca ele como key da map. aí é só dar um get nesse map, se retornar nulo, significa que a janela não foi aberta.
e por aí vai...
ps-off: tirando a poeira do usuário...
|
Bruno R. Lima
-------------------------------------------
flickr :: twitter |
|
|
 |
|
|