Minimizar um form com formstyle = fsStayOnTop
Olá pessoal,
Delphi 7
1) Tenho um form principal com formstyle = fsMDIForm
2) Tenho um form2 com formstyle = fsStayOnTop
Quando abro o form2 a partir do form principal como abaixo,
form2 := tform2.create(application);
form2.Show;
Ao minimizar o Form2, ele simplesmente some, não aparece a telinha no canto esquerdo do windows para que eu possa dar Restore.
Como resolvo isso?
Delphi 7
1) Tenho um form principal com formstyle = fsMDIForm
2) Tenho um form2 com formstyle = fsStayOnTop
Quando abro o form2 a partir do form principal como abaixo,
form2 := tform2.create(application);
form2.Show;
Ao minimizar o Form2, ele simplesmente some, não aparece a telinha no canto esquerdo do windows para que eu possa dar Restore.
Como resolvo isso?
Giovani Arakan
Curtidas 0
Respostas
Arthur Heinrich
17/05/2023
Forms do tipo MDI (multiple-document interface) não são aplicações, de fato, para aparecerem na barra de tarefas. Elas são documentos que aparecem dentro de um form principal.
Normalmente, aplicações deste tipo exibem a lista de documentos abertos em um menu.
Entretanto, quando um componente é aberto, ele é exibido no contexto do seu "parent" component.
Você pode tentar algo como:
form2 := tform2.create(application);
form2.Parent:=Self; // Self neste contexto, significa o form principal, já que o form2 está sendo criado dentro de um método do form principal.
form2.Show;
É possível que, assim, a versão minimizada do seu form apareça dentro do form principal.
Normalmente, aplicações deste tipo exibem a lista de documentos abertos em um menu.
Entretanto, quando um componente é aberto, ele é exibido no contexto do seu "parent" component.
Você pode tentar algo como:
form2 := tform2.create(application);
form2.Parent:=Self; // Self neste contexto, significa o form principal, já que o form2 está sendo criado dentro de um método do form principal.
form2.Show;
É possível que, assim, a versão minimizada do seu form apareça dentro do form principal.
GOSTEI 0
Giovani Arakan
17/05/2023
Olá Arthur, valeu pela resposta.
Tentei mas não deu certo. Ele some totalmente.
Como seria colocar em um menu os forms que estão minimizados?
Valeu!
Tentei mas não deu certo. Ele some totalmente.
Como seria colocar em um menu os forms que estão minimizados?
Valeu!
GOSTEI 0
Giovani Arakan
17/05/2023
Arthur,
Segui tua dica,
form2 := tform2.create(application);
form2.Parent:=Self; // Self neste contexto, significa o form principal, já que o form2 está sendo criado dentro de um método do form principal.
form2.Show;
mudei o form principal para formstyle := fsNormal e funcionou perfeitamente.
Valeu!!
Segui tua dica,
form2 := tform2.create(application);
form2.Parent:=Self; // Self neste contexto, significa o form principal, já que o form2 está sendo criado dentro de um método do form principal.
form2.Show;
mudei o form principal para formstyle := fsNormal e funcionou perfeitamente.
Valeu!!
GOSTEI 0