thalesoli 0 Denunciar post Postado Janeiro 25, 2007 Ctrl acao na criacao e na destruicao do form Bom dia pessoal estou desenvolvendo um componente para salvar as configurações do form em relação aos componentes checkbox, radiobutton, combobox, listbox. o problema é q eu queria q apos a criação do form e de seus componentes, fosse resgatado as informações salvas anteriormente e antes de tudo ser destruido, que fosse armazenado. O processo de gravar e ler as configurações está pronto, so nao consigo fazer com q seja executado sem que o form. no evento on create, chame o metodo de leitura, e no evento onclose, que ele grave as mesmas. atraves do comando Application.HookMainForm eu consegui obter as mensagens que são enviadas para o form, mas nao o de inicializar, e nem o de destruir. se alguem soubem me responda ai desde já agradeço falow http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
Hugo Slepicka 0 Denunciar post Postado Janeiro 25, 2007 I aew Thales beleza??? me desculpa, mas não entendi... você gostaria de enviar o comando para o form no momento de inicializar e destruir??? ou capturar as mensagens enviadas? flw aew! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
thalesoli 0 Denunciar post Postado Janeiro 25, 2007 Oi hugoé o seguinteeu preciso que o meu componente identifique os estados do form através das mensagens enviadas a ele (wm_mousemove, etc), pois quando o form inicia, ele cria todos os componentes, e após criar, queria q o meu componente executasse o método que nele foi implementado de buscar configurações salvas do form (checkbox, radiobuttons, etc) e restaurasse (persistência), e quando ele fosse fechar, antes fosse feito o método de salvar essas configurações.isso eu consigo fazer através do oncreate e do onclose do form, chamando dos metodos.. mas eu queria que fosse automatico.não sei se deu para entender...mas desde já agradeçofalow Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Janeiro 26, 2007 Dei uma olhada no help do delphi, encontrei o WM_SHOWWINDOW e WM_DESTROY, são mensagens do windows, acredito que iram fazer o que você deseja, ficando: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Edit1: TEdit; private { Private declarations } public { Public declarations } procedure WMShowWindow(var M: TWMShowWindow); Message WM_SHOWWINDOW; procedure WMDestroy(var M: TWMDestroy); Message WM_DESTROY; end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.WMShowWindow(var M: TWMShowWindow);begin{ Executado depois que criou}end;procedure TForm1.WMDestroy(var M: TWMDESTROY);begin{ Executado antes de ser destuído}end;end. Compartilhar este post Link para o post Compartilhar em outros sites
thalesoli 0 Denunciar post Postado Janeiro 26, 2007 Bom dia Marcioé o seguinte.. em relacao ao controle de mensagens no form, não tenho problema, nem no onshow(oncreate no meu caso) ou no onclose...so que eu estou tentando fazendo o controle dentro de um componente, ou seja eu nao quero que eu ser obrigado a configurar os enventos em todos os forms, quero q so colocando o componente isto aconteça.falow Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Janeiro 26, 2007 Mas se colocar dentro do componente acontece algum erro ? No caso colocar o que lhe passei. Compartilhar este post Link para o post Compartilhar em outros sites
thalesoli 0 Denunciar post Postado Janeiro 26, 2007 O detalhe q do jeito q você fez eu sou obrigado a configurar eventos no form, coisa q nao quero.o componente deve reconhecer q o form criou, e restaurar as configurações salvas, e andes de ser destuido, salvar as configurações.quando chegar em casa eu coloco o codigo do componente para vcs verem..obrigado pela ajudafalow Compartilhar este post Link para o post Compartilhar em outros sites