Usuário com melhor resposta
exibir uma janela aberta

Pergunta
-
Galera, estou com uma dificuldade, é o seguinte, ao montar um sistema Desktop criei um form principal e nele chamo outros forms ( que não estão classificados como filhos, pois só abro um e não vários) porem caso aconteça de o form perder o foco, por exemplo se clicar novamente no form principal o segundo form fica atrás do Principal, como posso fazer que seja exibido novamente o segundo form, sei criar um novo ( eu desabilitei a exibição do segundo form na Taskbar) o que eu gostaria que ele voltasse com as informações que já estavam nele, tipo como funciona o outlook express, se você clicar nele e ele estiver aberto ele volta para onde estava.
Tentei da seguinte forma mas não funcionou eu sei que na hora de instanciar, não posso usar o metodo new, mas como fazer:
if (statusClientes == "FECHADO") { frmClientes telaClientes = new frmClientes(); statusClientes = "ABERTA"; telaClientes.Show(); } else { //Aqui seria minha dificuldade }
**Raphael Chaves**
Respostas
-
Ahh ta, então faça assim, coloque esse seu form como uma variável de sua classe
private Clientes clientes = null;
Escreva esse código no evento do botão:if (clientes == null || clientes.IsDisposed) { clientes = new Clientes(); clientes.Show(); } else if (!clientes.Focused) { clientes.Focus(); }
- Editado Murilo Amaru Gomes quinta-feira, 22 de outubro de 2009 18:47 iniciando form clientes
- Marcado como Resposta Jurua quinta-feira, 22 de outubro de 2009 19:05
Todas as Respostas
-
-
Não Murilo,
eu não quero deixar o segundo form, como modal, o acesso ao form principal pode vai existir.
Hoje está da seguinte forma, abro a tela para clientes, e se eu clicar fora dela ela perde o foco, só à recupero com o alt+tab, e se eu clicar no botão que chama o form Clientes novamente ele acaba abrindo um form novo.
eu queria que quando perdesse o foco, aclicar no botão Clientes ele recuperasse o form e não criasse um novo, por isso tentei usar o if para não usar o "tela = new".
**Raphael Chaves** -
Ahh ta, então faça assim, coloque esse seu form como uma variável de sua classe
private Clientes clientes = null;
Escreva esse código no evento do botão:if (clientes == null || clientes.IsDisposed) { clientes = new Clientes(); clientes.Show(); } else if (!clientes.Focused) { clientes.Focus(); }
- Editado Murilo Amaru Gomes quinta-feira, 22 de outubro de 2009 18:47 iniciando form clientes
- Marcado como Resposta Jurua quinta-feira, 22 de outubro de 2009 19:05
-