Pegar o Nome de uma Variavel.
Olá pessoal,
Estou querendo pegar o NOME de uma variavel que eu declarei no Delphi em Tempo de Designer.
Seria assim,
Eu queria dar um ShowMessage com o Nome da variável. No Caso ´Nome´. Ou seja eu não quero pegar o valor (´Teste´) quero o próprio nome.
Alguem tem ideia de como faço?
Obrigado
Yalle Cunha.
Estou querendo pegar o NOME de uma variavel que eu declarei no Delphi em Tempo de Designer.
Seria assim,
var Nome: string; Nome := ´Teste´;
Eu queria dar um ShowMessage com o Nome da variável. No Caso ´Nome´. Ou seja eu não quero pegar o valor (´Teste´) quero o próprio nome.
Alguem tem ideia de como faço?
Obrigado
Yalle Cunha.
Yallebr
Curtidas 0
Respostas
Marcelo Saviski
09/03/2005
Nossa, isso acho que não dá...
mesmo porque se vc for dar um showmessage nessa variavel, vc vai ter que escrever, ShowMessage(NomeVariável), o trabalho seria só de colocar isso entre aspas...
o máximo que sei que pode chegar, é saber se uma variável existe, com essas diretivas do compilador:
mesmo porque se vc for dar um showmessage nessa variavel, vc vai ter que escrever, ShowMessage(NomeVariável), o trabalho seria só de colocar isso entre aspas...
o máximo que sei que pode chegar, é saber se uma variável existe, com essas diretivas do compilador:
[color=green:a31db2e154]{$IF Declared(Nomevariavel)}[/color:a31db2e154]
[color=darkblue:a31db2e154][i:a31db2e154] //variável declarada[/i:a31db2e154][/color:a31db2e154][color=green:a31db2e154]
{$ELSE}[/color:a31db2e154]
[i:a31db2e154][color=darkblue:a31db2e154] //não declarada[/color:a31db2e154][/i:a31db2e154]
[color=green:a31db2e154]{$IFEND}[/color:a31db2e154]
GOSTEI 0
Beppe
09/03/2005
Eu já fiz da seguinte forma:
Adiciona numa lista(TStrings) nomes de variáveis juntamente com ponteiros para seus valores(podem ser alocados dinâmicamente).
O problema é o tipo das variáveis. Sugiro que use um prefixo ou sufixo no nome que vai na lista.
Adiciona numa lista(TStrings) nomes de variáveis juntamente com ponteiros para seus valores(podem ser alocados dinâmicamente).
var Teste: Integer; MinhaVar: Double; ... Lista.AddObject(´Teste´, TObject(@Teste)); Lista.AddObject(´MinhaVar´, TObject(@MinhaVar)); Lista.AddObject(´VarDinamica´, TObject(AllocMem(100))); ... Valor := PInteger(Lista.Objects[Lista.IndexOf(´Teste´)])^;
O problema é o tipo das variáveis. Sugiro que use um prefixo ou sufixo no nome que vai na lista.
GOSTEI 0