ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

OpenDialog dando msg cannot make a visible window

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Seg Jul 04, 2016 6:12 pm    Assunto: OpenDialog dando msg cannot make a visible window Responder com Citação

Pessoal tenho um form principal, nele abro um forme estoque, quando executo o Opendialog ele da a mensagem Cannot make a visible window modal, se eu der enter ele executa a tarefa do opendialog.execute, abro os forms com showmodal se alguém tiver a solução desde já agradeço, uso win 8.1 e delphi xe5.

Editado pela última vez por LPalandi em Dom Jul 10, 2016 12:14 pm, num total de 2 vezes
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
johnny-walker
Moderador
Moderador


Registrado: Sábado, 4 de Outubro de 2003
Mensagens: 10653
Localização: Contagem/MG - BRAZIL

MensagemEnviada: Seg Jul 04, 2016 11:37 pm    Assunto: Responder com Citação

Verifique se tem algum objeto pedindo foco.

Neste caso, fazemos da seguinte forma para não dar este tipo de problema, por isto checamos primeiro se o componente pode receber o foco, assim:

Código:
if objeto.canfocus then
   objeto.setfocus;




bye
_________________
P.O.W.E.R B.Y D.E.L.P.H.I
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Ter Jul 05, 2016 10:29 am    Assunto: Responder com Citação

Johnny, do form principal abro um form estoque, e no estoque executo o opendialog, fiz da seguinte forma e não consegui, if ModuloEstoque.canfocus then ModuloEstoque.setfocus;, seria assim que devo fazer?, e pode ser quando no evendo que abre o opendialog?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Sáb Jul 09, 2016 10:38 am    Assunto: Responder com Citação

Agradeço o auxílio, mas não resolveu desta forma, durante testes, adicionei um memo, e por incrível que pareça passou a funcionar, mesmo estando desabilitado e invisível, como não atrapalha em nada esta resolvido.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
johnny-walker
Moderador
Moderador


Registrado: Sábado, 4 de Outubro de 2003
Mensagens: 10653
Localização: Contagem/MG - BRAZIL

MensagemEnviada: Sáb Jul 09, 2016 6:37 pm    Assunto: Responder com Citação

Amigo, então tem um problema que você não souber resolver, mas seguramente aquilo que tentava entrar em foco mudou a condição de foco.

Não convém deixar pontas soltas no aplicativo, depois a gente esquece.



bye
_________________
P.O.W.E.R B.Y D.E.L.P.H.I
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Dom Jul 10, 2016 12:06 pm    Assunto: Responder com Citação

Então, eu devo fazer o teste de foco antes de tudo no botão que dispara o opendialog?, o botão esta num toolbar onde adiciono actions.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Seg Jul 11, 2016 7:01 pm    Assunto: Responder com Citação

Jonny por favor, verifiquei o foco da seguinte maneira:

nome:= Screen.ActiveControl.Name;
showmessage(nome);

e o foco esta no formEstoque, o opendialog esta dando erro na ora de devolver o foco para ele, como resolver isso?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB