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 

Exibir form durante tempo que uma procedure é executada[res]

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


Registrado: Quinta-Feira, 10 de Abril de 2008
Mensagens: 364
Localização: Na frente do Computador

MensagemEnviada: Qua Nov 03, 2010 8:26 am    Assunto: Exibir form durante tempo que uma procedure é executada[res] Responder com Citação

Pessoal sei q já vi algo aqui no forum sobre mas não consegui achar, é o seguinte tenho uma procedure que importa dados de um arquivo do sped e grava no banco, bem esse procedimento de leitura demora um pouco e eu gostaria que esse procedimento quando chamado trouxesse um form e nele fosse rodado a procedure para não dar aquele aparencia q os demais form estão travado. Será q fui claro? Bem se puderem me ajuda por favor postem ai.

vlw


Editado pela última vez por fbnois em Sex Nov 05, 2010 10:07 am, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail MSN Messenger
felipecaputo
Colaborador
Colaborador


Registrado: Quinta-Feira, 13 de Mai de 2010
Mensagens: 1719
Localização: Florianópolis / SC

MensagemEnviada: Qua Nov 03, 2010 8:30 am    Assunto: Responder com Citação

Bom dia amigo, aqui na empresa temos uma procedure que se chama MostraForm que exibe o form e mantem o foco nele (AlwaysOnTop) e na rotina lostfocus dele ele tem focus denovo

e no final chamamos a rotina fechaform que remove o evento do onlostfocus e fecha ele e colocamos ele +- assim

Código:
try
  mostraform();
  .....
finally
  fechaform;
end;

_________________
if Post.State = psResolvido then
Post.Caption := Post.Caption + ' [RESOLVIDO]';
_____________________________________________
O único homem que está isento de erros, é aquele que não arrisca acertar. Albert Einstein
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Visitar a homepage do Usuário MSN Messenger
karlosrapanui
Profissional
Profissional


Registrado: Terça-Feira, 29 de Agosto de 2006
Mensagens: 538

MensagemEnviada: Qua Nov 03, 2010 1:53 pm    Assunto: Responder com Citação

Crie um form em tempo de execução

var
F:Tform;
MSG: Tlabel;
Borda: TShape;
begin
Application.ProcessMessages;

// CRIA O FORM
F:= TForm.Create(Application);
F.BorderStyle := bsNone;
F.Position := poMainFormCenter;
F.Width := 369;
F.Color := clAqua;
F.Height := 196;
F.Name := 'Arial';
F.Font.Size := 12;
F.Font.Style := [fsBold];
F.Font.Color := clRED;

Borda := TShape.Create(Application);
Borda.Parent := F;
Borda.Align := alClient;

MSG := TLabel.Create(Application);
MSG.Parent := F;
MSG.Transparent := True;
MSG.AutoSize := False;
Msg.Caption := 'Aguarde, atualizando o cadastro.';
MSG.Alignment := taCenter;
MSG.Align := alClient;
MSG.Layout := tlCenter;

F.Show;
F.Update;


// FAÇA A ROTINA

// LIBERA O FORM
F.Free;

Espero que seja util

[]'s

Carlos
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
AnOnImUs.Info
Colaborador
Colaborador


Registrado: Quinta-Feira, 23 de Agosto de 2007
Mensagens: 1119
Localização: Goiânia - GO

MensagemEnviada: Qua Nov 03, 2010 3:30 pm    Assunto: Responder com Citação

Form.Repaint;

ou

Application.ProcessMessages
_________________
Reter o conhecimento é promover a ignorância !
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
fbnois
Membro Junior
Membro Junior


Registrado: Quinta-Feira, 10 de Abril de 2008
Mensagens: 364
Localização: Na frente do Computador

MensagemEnviada: Sex Nov 05, 2010 10:07 am    Assunto: Responder com Citação

No meu caso acabei optando po usar threads, gostei muito da solução

mas obrigado pela atenção!

vlw
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail MSN Messenger
karlosrapanui
Profissional
Profissional


Registrado: Terça-Feira, 29 de Agosto de 2006
Mensagens: 538

MensagemEnviada: Sex Nov 05, 2010 10:09 am    Assunto: Responder com Citação

Camarada fbnois

Compartilhe com a gente a sua solução.

[]'s

Carlos
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
fbnois
Membro Junior
Membro Junior


Registrado: Quinta-Feira, 10 de Abril de 2008
Mensagens: 364
Localização: Na frente do Computador

MensagemEnviada: Sex Nov 05, 2010 10:15 am    Assunto: Responder com Citação

karlosrapanui escreveu:
Camarada fbnois

Compartilhe com a gente a sua solução.

[]'s

Carlos


Eu achei um tutorial na net e adaptei a minha necessidade ai vai o link

http://www.planetadelphi.com.br/artigo/73/utilizando-threads
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail MSN Messenger
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