TypeCast com String

Delphi

08/06/2011

Amigos estou tentando fz um typecast apartir de uma string gravada em um arquivo ini

Txxxxxxxx(Arquivo.ReadString('campo1', 'Txxxxxx', 'Txxxxxx'));

Porem ele sempre me da invalid typecast


alguem tem uma sugestão, agradeço...
Eduardo Richeli

Eduardo Richeli

Curtidas 0

Respostas

Marco Salles

Marco Salles

08/06/2011

Mas porque vc esta fazendo um TypCast ???

Não é necessario

Basta carregar em uma STring

GOSTEI 0
Eduardo Richeli

Eduardo Richeli

08/06/2011

Mas porque vc esta fazendo um TypCast ???

Não é necessario

Basta carregar em uma STring



Marcos Valeu,

e o seguinte, ele vai receber um valor

Então eu tenho uma variavel

Tvariavel := o typecast.
GOSTEI 0
Marco Salles

Marco Salles

08/06/2011

Não , a variavel do tipo string tem que recebe o retorno da leitura

so isso.

var
str:string
begin
str:=Aqui elea recebe
GOSTEI 0
Eduardo Richeli

Eduardo Richeli

08/06/2011

Não , a variavel do tipo string tem que recebe o retorno da leitura

so isso.

var
str:string
begin
str:=Aqui elea recebe


Não a Classe quem vai receber a string
GOSTEI 0
Rafael Mattos

Rafael Mattos

08/06/2011

ta faltando o FindComponent.

exemplo
   TButton(FindComponent('btnIncluir')).Visible := FALSE;

GOSTEI 0
Marco Salles

Marco Salles

08/06/2011

Mas a classe não pode receber uma String

Uma propriedade da classe se for do tipo String pode receber

Porque que vc acha que uma classe pode receber uma string ???

então ela pode receber um Inteiro ???

Não faz sentido
GOSTEI 0
Eduardo Richeli

Eduardo Richeli

08/06/2011

Mas a classe não pode receber uma String

Uma propriedade da classe se for do tipo String pode receber

Porque que vc acha que uma classe pode receber uma string ???

então ela pode receber um Inteiro ???

Não faz sentido


amigo acabei me confundindo mesmo e um type

ele recebe varios itens

type

Txxx = (Txx1, Txx2, Txx3...)

estes Txx1 quero gravar no ini como string e depois recuperar
GOSTEI 0
Marco Salles

Marco Salles

08/06/2011

Mas a classe não pode receber uma String

Uma propriedade da classe se for do tipo String pode receber

Porque que vc acha que uma classe pode receber uma string ???

então ela pode receber um Inteiro ???

Não faz sentido


amigo acabei me confundindo mesmo e um type

ele recebe varios itens

type

Txxx = (Txx1, Txx2, Txx3...)

estes Txx1 quero gravar no ini como string e depois recuperar


Tipo enumerados não é string , para converte-lo em string vc deve utilizar geralmente RTTI ,
Para o Delphi2009 em diante (se não me engano) , que tem suporte a generics fiz uma classe
que transforma Types enumeraodos em String e String em tipos enumerados

http://marcosalles.wordpress.com/2011/03/28/classe-generica-para-transformar-tipos-enumerados-para-tstrings/

Ela é uma classe generica e expansivel a qualquer tipo enumerado , inclusive o seu . Porém caso vc não tenha
o Delphi 2009 pesquise no google por :   De Enum para String e de String para Enum

Vc irá achar certamente algo mais simples do que a classe que sugeri no artigo , porém bem menos expansivel
de modo que ira te servir neste projeto com este tipo. Para outro tipo , tem que fazer tudo de nove





GOSTEI 0
Eduardo Richeli

Eduardo Richeli

08/06/2011

Mas a classe não pode receber uma String

Uma propriedade da classe se for do tipo String pode receber

Porque que vc acha que uma classe pode receber uma string ???

então ela pode receber um Inteiro ???

Não faz sentido


amigo acabei me confundindo mesmo e um type

ele recebe varios itens

type

Txxx = (Txx1, Txx2, Txx3...)

estes Txx1 quero gravar no ini como string e depois recuperar


Tipo enumerados não é string , para converte-lo em string vc deve utilizar geralmente RTTI ,
Para o Delphi2009 em diante (se não me engano) , que tem suporte a generics fiz uma classe
que transforma Types enumeraodos em String e String em tipos enumerados

http://marcosalles.wordpress.com/2011/03/28/classe-generica-para-transformar-tipos-enumerados-para-tstrings/

Ela é uma classe generica e expansivel a qualquer tipo enumerado , inclusive o seu . Porém caso vc não tenha
o Delphi 2009 pesquise no google por :   De Enum para String e de String para Enum

Vc irá achar certamente algo mais simples do que a classe que sugeri no artigo , porém bem menos expansivel
de modo que ira te servir neste projeto com este tipo. Para outro tipo , tem que fazer tudo de nove







tentei ler do tipo integer,

VTxxx := Arquivo.ReadInteger('zzz', 'yyyy', 0);

mas ele da tipos incompativel
GOSTEI 0
Marco Salles

Marco Salles

08/06/2011

tentei ler do tipo integer, 

VTxxx := Arquivo.ReadInteger('zzz', 'yyyy', 0);

mas ele da tipos incompativel


claro que vai dar

Vc não pode fazer isto

type
TEstado = (ftCasodo,ftSolteiro);

procedure TForm3.Button10Click(Sender: TObject);
var
Obj:TEstado;
begin
Obj:=0;  //Aqui da erro de tipos incompativeis

So uma pergunta , o que que vc tem contra os links que lhe passei .. Vc resolve facilemente esta conversão ???
GOSTEI 0
POSTAR