Re: [delphi-br] Form pelo nome

2007-01-24 Por tôpico Adauri Antonio Camacho Junior
Funcionou perfeitamente, isso mesmo que eu precisava.

Obrigado


Jr.


  - Original Message - 
  From: Rafael Marques 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, January 24, 2007 8:01 AM
  Subject: Re: [delphi-br] Form pelo nome


  Bom Dia Adauri!!

  eu faço da seguinte forma:

  procedure chamatela(tela: string);
  var
  pc: TPersistentClass;
  begin

  pc := GetClass('t'+tela);
  if (pc <> nil) then

  with TFormClass(pc).Create(f_principal) do
  try
  Name := tela;
  ShowModal;
  finally
  Free;
  end;
  end;

  sendo o f_principal o form principal da minha aplicacao e a variavel tela é o 
nome do form 

  no Initialization dos forms eu preciso colocar
  RegisterClass(tfCadastro)

  sendo fCadastro o nome do form atual

  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, January 24, 2007 9:40 AM
  Subject: Re: [delphi-br] Form pelo nome

  É isso mesmo que eu quero, porem nao achei nada no google, pode me passa um 
exemplo.

  Obrigado

  Adauri Jr.

  - Original Message - 
  From: Henrique Netzka (Vetor Sistemas) 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:35 AM
  Subject: Re: [delphi-br] Form pelo nome

  Opa!

  Se eu entendi direito... o que você está procurando é a criação de um form 
pela CLASSE. Neste caso, procure por "criar form pela classe delphi" no google 
que você encontra :)

  Keywords: RegisterClass, UnregisterClass, initialization, finalization, 
TFormClass, FindClass

  Abraços
  Henrique

  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:14 AM
  Subject: [delphi-br] Form pelo nome

  Bom dia a todos, eu gostaria de chamar o form pelo nome, por exemplo, 
  gravo em um campo que o cadastro de cliente é o form FRM_CLIENTE, 
  quando chamasse o cadastro de cliente eu passaria o nome do form, eu 
  faria o create e o showmodal pelo nome do form. Alguem sabe como fazer 
  isso ?

  Obrigado

  Jr.

  [As partes desta mensagem que não continham texto foram removidas]

  [As partes desta mensagem que não continham texto foram removidas]

  --
  Esta mensagem foi verificada pelo E-mail Protegido Terra.
  Scan engine: McAfee VirusScan / Atualizado em 23/01/2007 / Versão: 5.1.00/4947
  Proteja o seu e-mail Terra: http://mail.terra.com.br/ 

  [As partes desta mensagem que não continham texto foram removidas]



   

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Form pelo nome

2007-01-24 Por tôpico Henrique Netzka \(Vetor Sistemas\)
Opa, ok, vamos lá então...

Busca: 
http://www.google.com.br/search?hl=pt-BR&q=findclass+delphi+registerclass&meta=
Resultado mais decente entre os primeiros 3 resultados: 
http://delphi.about.com/library/weekly/aa080905a.htm
Função que você vai precisar:  

procedure CreateFormFromName(
  const FormName : string);
var
  fc : TFormClass;
  f : TForm;
begin
  fc := TFormClass(FindClass(FormName));
  f := fc.Create(Application);
  f.Show;
end; (* CreateFormFromName *)

Em resumo... Você usa a função acima pra criar o form; as classes devem ser 
registradas com o RegisterClass (cfe vc vai ler no artigo), porém elas não 
precisam ser registradas todas no MainForm... É mais legal registrá-las no 
escopo initialization de cada unit, pq daí vc não precisa colocar as units no 
USES do seu MainForm (elas podem estar literalmente desconectadas).

Para tanto, na unit de CADA FORM, você coloca (no fim, antes do end.): 

initialization
  RegisterClass(TMeuForm);

finalization
  UnregisterClass(TMeuForm);

end.

Daí, na hora de criar, vc cria CreateFormFromName('TMeuForm'); e pronto

A função pode ser melhorada... vc pode conferir, por exemplo, se o form é 
fsMDIChild ou fsNormal, e se for fsNormal vc põe ShowModal, esse tipo de 
coisa...

Espero ter ajudado agora!!

Abraços,
Henrique





  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, January 24, 2007 9:40 AM
  Subject: Re: [delphi-br] Form pelo nome


  É isso mesmo que eu quero, porem nao achei nada no google, pode me passa um 
exemplo.

  Obrigado

  Adauri Jr.

  - Original Message - 
  From: Henrique Netzka (Vetor Sistemas) 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:35 AM
  Subject: Re: [delphi-br] Form pelo nome

  Opa!

  Se eu entendi direito... o que você está procurando é a criação de um form 
pela CLASSE. Neste caso, procure por "criar form pela classe delphi" no google 
que você encontra :)

  Keywords: RegisterClass, UnregisterClass, initialization, finalization, 
TFormClass, FindClass

  Abraços
  Henrique

  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:14 AM
  Subject: [delphi-br] Form pelo nome

  Bom dia a todos, eu gostaria de chamar o form pelo nome, por exemplo, 
  gravo em um campo que o cadastro de cliente é o form FRM_CLIENTE, 
  quando chamasse o cadastro de cliente eu passaria o nome do form, eu 
  faria o create e o showmodal pelo nome do form. Alguem sabe como fazer 
  isso ?

  Obrigado

  Jr.

  [As partes desta mensagem que não continham texto foram removidas]

  [As partes desta mensagem que não continham texto foram removidas]



   

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Form pelo nome

2007-01-24 Por tôpico Rafael Marques
Bom Dia Adauri!!

eu faço da seguinte forma:

procedure chamatela(tela: string);
var
  pc: TPersistentClass;
begin

  pc := GetClass('t'+tela);
  if (pc <> nil) then
  
  with TFormClass(pc).Create(f_principal) do
  try
  Name := tela;
  ShowModal;
  finally
  Free;
  end;
end;

sendo o f_principal o form principal da minha aplicacao e a variavel tela é o 
nome do form 

no Initialization dos forms eu preciso colocar
RegisterClass(tfCadastro)

sendo fCadastro o nome do form atual




  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, January 24, 2007 9:40 AM
  Subject: Re: [delphi-br] Form pelo nome


  É isso mesmo que eu quero, porem nao achei nada no google, pode me passa um 
exemplo.

  Obrigado

  Adauri Jr.

  - Original Message - 
  From: Henrique Netzka (Vetor Sistemas) 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:35 AM
  Subject: Re: [delphi-br] Form pelo nome

  Opa!

  Se eu entendi direito... o que você está procurando é a criação de um form 
pela CLASSE. Neste caso, procure por "criar form pela classe delphi" no google 
que você encontra :)

  Keywords: RegisterClass, UnregisterClass, initialization, finalization, 
TFormClass, FindClass

  Abraços
  Henrique

  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:14 AM
  Subject: [delphi-br] Form pelo nome

  Bom dia a todos, eu gostaria de chamar o form pelo nome, por exemplo, 
  gravo em um campo que o cadastro de cliente é o form FRM_CLIENTE, 
  quando chamasse o cadastro de cliente eu passaria o nome do form, eu 
  faria o create e o showmodal pelo nome do form. Alguem sabe como fazer 
  isso ?

  Obrigado

  Jr.

  [As partes desta mensagem que não continham texto foram removidas]

  [As partes desta mensagem que não continham texto foram removidas]



   


--
  Esta mensagem foi verificada pelo E-mail Protegido Terra.
  Scan engine: McAfee VirusScan / Atualizado em 23/01/2007 / Versão: 5.1.00/4947
  Proteja o seu e-mail Terra: http://mail.terra.com.br/ 


[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Form pelo nome

2007-01-24 Por tôpico Adauri Antonio Camacho Junior
É isso mesmo que eu quero, porem nao achei nada no google, pode me passa um 
exemplo.

Obrigado

Adauri Jr.



  - Original Message - 
  From: Henrique Netzka (Vetor Sistemas) 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:35 AM
  Subject: Re: [delphi-br] Form pelo nome


  Opa!

  Se eu entendi direito... o que você está procurando é a criação de um form 
pela CLASSE. Neste caso, procure por "criar form pela classe delphi" no google 
que você encontra :)

  Keywords: RegisterClass, UnregisterClass, initialization, finalization, 
TFormClass, FindClass

  Abraços
  Henrique

  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:14 AM
  Subject: [delphi-br] Form pelo nome

  Bom dia a todos, eu gostaria de chamar o form pelo nome, por exemplo, 
  gravo em um campo que o cadastro de cliente é o form FRM_CLIENTE, 
  quando chamasse o cadastro de cliente eu passaria o nome do form, eu 
  faria o create e o showmodal pelo nome do form. Alguem sabe como fazer 
  isso ?

  Obrigado

  Jr.

  [As partes desta mensagem que não continham texto foram removidas]



   

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Form pelo nome

2007-01-23 Por tôpico Henrique Netzka \(Vetor Sistemas\)
Opa!

Se eu entendi direito... o que você está procurando é a criação de um form pela 
CLASSE. Neste caso, procure por "criar form pela classe delphi" no google que 
você encontra :)

Keywords: RegisterClass, UnregisterClass, initialization, finalization, 
TFormClass, FindClass

Abraços
Henrique

  - Original Message - 
  From: Adauri Antonio Camacho Junior 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, January 23, 2007 8:14 AM
  Subject: [delphi-br] Form pelo nome


  Bom dia a todos, eu gostaria de chamar o form pelo nome, por exemplo, 
  gravo em um campo que o cadastro de cliente é o form FRM_CLIENTE, 
  quando chamasse o cadastro de cliente eu passaria o nome do form, eu 
  faria o create e o showmodal pelo nome do form. Alguem sabe como fazer 
  isso ?

  Obrigado

  Jr.



   

[As partes desta mensagem que não continham texto foram removidas]