none
Como identificar qual form está na frente ou com o foco dentro de um form MDIContainer? RRS feed

  • Pergunta

  • Boa tarde pessoal,

    Criei um programa onde uso como form principal um MdiContainer e dentro dele criei vários forms que abrem "dentro" dele.

    Dentro de cada form "filho" eu coloquei um botão SALVAR para que o usuário grave os dados inserido naquele form. São forms de cadastro de produtos, outro para clientes, outro para fornecedores, etc...

    O que eu gostaria é de fazer uma alteração, gostaria de tirar o botão SALVAR de dentro de cada form filho e colocar um único botão salvar no form principal que é o MDICONTAINER. Porém, não sei como vou poder identificar qual form está "na frente" digamos assim, ou com o foco, para eu saber que quando apertar nesse novo botão SALVAR, que é aquele form que ele tem que afetar com a gravação dos dados, pois naquele momento vários forms poderão estar abertos, mas só o que tem que ser afetado é o que estiver na frente ou em foco.

    Já vi softwares assim, e não sei como posso criar essa funcionalidade.

    Alguém pode me dar uma dica ?

    Obrigado.

    domingo, 14 de fevereiro de 2016 15:57

Respostas

  • Boa noite.

    É bastante simples, na verdade:

    var form = ActiveMdiChild;

    Com esta linha tu pegas a referência do Form filho ativo; através disso, tu consegues fazer o que for necessário (talvez com algumas mudanças na estrutura dos códigos dos Forms filhos).

    Para verificar se é um FormX, tu podes fazer o seguinte:

    if (form is FormX)

    Att., Rafael Simor

    • Marcado como Resposta Marcos SJ segunda-feira, 15 de fevereiro de 2016 11:02
    segunda-feira, 15 de fevereiro de 2016 06:11