Fórum Usando o propriedade TAG do form #20104

09/03/2010

0

Eu gostaria de saber como faço para usar a propriedade TAG do form para passar um array, visto que ja consegui passar objetos mais complexos como classes.

Obrigado.
Luiz Benevenuto

Luiz Benevenuto

Responder

Posts

09/03/2010

Rogerio

Ola Luiz, seja muito bem-vindo ao fórum!     Sobre a sua dúvida, que eu saiba a propriedade Tag do form é do tipo integer, ou seja, aceita valores inteiro. Desconheço outra forma. Mas vamos ver o que os colegas do fórum tem a dizer, posso estar enganado.    
Responder

Gostei + 0

09/03/2010

Wilson Junior

Caro Luiz,
É impossível passar um array para uma propriedade do tipo inteiro.

Espero ter colaborado.
Responder

Gostei + 0

09/03/2010

Thiago Santana

Luiz assim como os colegas falaram é impossível passar um array para a propriedade TAG do Form, pois ela é do tipo inteiro!
Mas qual seria seu próposito em passar este array para a TAG?
Quem sabe podemos te ajudar a solucionar seu problema de um jeito diferente...
AbraçoO
Responder

Gostei + 0

09/03/2010

Luiz Benevenuto

Por ser um inteiro eu posso virtualmente passar qq coisa para a propriedade TAG.
Se vc tem uma rotina genérica de criação de forms como :

procedure TProcSavt.CriarFormularioModal(NomeFormulario: String;Tag:integer = 0);
var
  Formulario:  TForm;
  TFormulario: TFormClass;
begin
  TFormulario := TFormClass(GetClass('T' + NomeFormulario));

  if Assigned(TFormulario) then
  begin
    Formulario := TFormulario.Create(nil);
    try
      Formulario.Tag:=Tag;
      Formulario.ShowModal;
    finally
      Formulario.Release;
    end;
  end
  else
    ShowMessage('A classe T' + NomeFormulario + ' ainda não foi registrada.');
end;

Mas e se vc quiser passar alguma informação para o novo form da pra usar a TAG. Funciona com tudo só não esou conseguindo passar um Array do tipo

var
  VarArray: Variant;
begin
  VarArray := varArrayCreate([0,2], varVariant);
  ...
  NovoFormulario.Tag := Integer(VarArray); // Essa instrução funciona para qq outra coisa.


Um abraço a todos.

Luiz
Responder

Gostei + 0

15/03/2010

Luiz Benevenuto

Ninguem ????
Responder

Gostei + 0

16/03/2010

Marcos Iwazaki

Vc disse que conseguiu passar objetos mais complexo na tag?

Bom... na minha opnião so da p passar números inteiros e nada mais.
Outra coisa para mim tag = gambi.

Se vc tem algo p passar para um form crie uma variavel nestes form.. no caso pode-se criar no form pai, e tbm criar métodos get e set para acessar esta variavel.

flw

Eu gostaria de saber como faço para usar a propriedade TAG do form para passar um array, visto que ja consegui passar objetos mais complexos como classes.

Obrigado.

 
 
Responder

Gostei + 0

16/03/2010

Wilson Junior

Olha, fiquei muito curioso com esta história de que você já conseguiu passar "Classes" para o campo TAG, pois como já disse, isto "NO EXISTS". Portanto, coloque o exemplo que você utilizou para passar as classes para a propriedade TAG.
Responder

Gostei + 0

16/03/2010

Luiz Benevenuto

Estou mandando um exemplo com a passagem de um TStrings e de uma Classe.

Um abraço.

Arquivo:

http://www.siffra.com.br/luiz/delphi/Teste_TAG.7z
Responder

Gostei + 0

16/03/2010

Wilson Junior

Mas você utiliza o endereço de memória do objeto e não o objeto em si. Desta forma sim é possível utilizar pela tag.
Vou analisar e depois respondo.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar