SHOWDIALOG EM PANEL
Boa tarde,
Pessoal é o seguinte, tenho um [Ô]PANEL[Ô] e eu abro alguns formulários dentro dele, o que eu queria era o seguinte.
Para adicionar um form ao panel eu faço assim:
Agora eu esse [Ô]Form2[Ô] vai chamar o Form3, eu gostaria de fazer tipo um showdialog para que o Form3 ficasse por cima do Form2, o detalhe é que não é para ficar por cima do Form principal, apenas dos forms que estão dentro do panel.
Pessoal é o seguinte, tenho um [Ô]PANEL[Ô] e eu abro alguns formulários dentro dele, o que eu queria era o seguinte.
Para adicionar um form ao panel eu faço assim:
Dim F2 As New Form2
F2.TopLevel = False
F2.Parent = Panel1
F2.Show()
Agora eu esse [Ô]Form2[Ô] vai chamar o Form3, eu gostaria de fazer tipo um showdialog para que o Form3 ficasse por cima do Form2, o detalhe é que não é para ficar por cima do Form principal, apenas dos forms que estão dentro do panel.
O problema é que um formulário de diálogo não é nunca um formulário [Ô]filhote[Ô], pois é exibido sempre em modal. Assim, o único [Ô]parâmetro aceitável[Ô] para o método ShowDialog é um formulário.
Se bem me lembro, incorporando a função CreateCompatibleDC da API Gdi32, é possÃvel gerar um ponteiro compatÃvel para exibir um modal. é trabalhoso, é preciso ainda definir os bounds e ainda pode não funcionar como esperado, já que nem todas as máquinas estão com a mesma versão do Windows (hoje está bem [Ô]dividida[Ô] a coisa), portanto não sei se ajudaria no seu caso.
Mas, por curiosidade, não seria mais adequado usar um formulário MDI ao invés de um Panel para exibir os [Ô]filhotes[Ô] ? é possÃvel que você utilize um Panel apenas para manter um [Ô]papel de parede[Ô] no formulário principal de seu aplicativo, e, se é este o caso, há boas formas de manter um [Ô]papel de parede[Ô] em um formulário MDI.
Se bem me lembro, incorporando a função CreateCompatibleDC da API Gdi32, é possÃvel gerar um ponteiro compatÃvel para exibir um modal. é trabalhoso, é preciso ainda definir os bounds e ainda pode não funcionar como esperado, já que nem todas as máquinas estão com a mesma versão do Windows (hoje está bem [Ô]dividida[Ô] a coisa), portanto não sei se ajudaria no seu caso.
Mas, por curiosidade, não seria mais adequado usar um formulário MDI ao invés de um Panel para exibir os [Ô]filhotes[Ô] ? é possÃvel que você utilize um Panel apenas para manter um [Ô]papel de parede[Ô] no formulário principal de seu aplicativo, e, se é este o caso, há boas formas de manter um [Ô]papel de parede[Ô] em um formulário MDI.
Tópico encerrado , respostas não são mais permitidas