ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Index out of bounds (0)

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
PutZ.Kinhu
Aprendiz
Aprendiz


Registrado: Sábado, 19 de Novembro de 2005
Mensagens: 108

MensagemEnviada: Qua Mai 31, 2006 8:49 am    Assunto: Index out of bounds (0) Responder com Citação

Meu programa esta dando o erro apresentado no assunto, creio eu que ele nao esta inserindo o meu valor no array, alguem pode me ajudar?
Segue abaixo meu codigo.

Tenho esse type:

type
// Definicao da classe
TSimbolo = class
private
// Campos da classe
identificador : String;
valor: double;


public
// Propriedades para ler os valores
property id : String
read identificador;
property val : double
read valor;
// Construtor
constructor Create(const identificador : String; const valor: double); overload;
constructor Create(const identificador : String); overload;
end;
//------------------------------------------------------------------------------

Estou usando o componente
var
tab_simb : TList;//tipo da variavel


tab_sim:=TList.Create//inicializacao da instancia

e na hora de inserir eu uso o comando:

tab_simb.Add(TSimbolo.Create(token,1));

Porem ao dar um showmessage(TSimbolo(tab_simb[0]).identificador);
ele mostra o erro do enunciado, alguem pode dar uma forca ai??
Vlw!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ricars01
Colaborador
Colaborador


Registrado: Quarta-Feira, 25 de Agosto de 2004
Mensagens: 1879
Localização: Itu/SP

MensagemEnviada: Qua Mai 31, 2006 10:54 am    Assunto: Index out of bounds (0) Responder com Citação

Nao sei se vc reparou, mas vc usou nomes diferentes no seu código. Vc criou a variável [i]tab_sim[/i] mas se referiu a [i]tab_simb[/i]. E outra coisa que eu achei estranho foi que vc está adicionando um item sem passar o identificador como String ( [i]tab_simb.Add(TSimbolo.Create(token,1));[/i] ).

E outra coisa, não sei se é obrigatório, mas sempre que eu declaro tipos com propriedades eu uso alguns membros privados. No seu caso eu faria assim:

[code]
type
[i]//Definição da Classe[/i]
TSimbolo = Class
private
FIdentificador : String;
FValor : Double;
public
property Identificador read FIdentificador write FIdentificador;
property Valor read FValor write FValor;
[i](* Aqui completa as declarações *) [/i]
end;
[/code]

Outra coisa é acessibilidade. Os membros acessíveis da sua classe não são [u]Identificador[/u] e [u]Valor[/u] e sim [b]Id[/b] e [b]Val[/b], já que vc declarou eles como propriedades.

Eu tentaria dar uma revisada nesses itens aí e ver se o problema persiste. Caso contrário posta o erro que deu e, se puder, um trecho do programa mesmo.


___________________________________________________
:yltype: [i] \"Programar também é uma expressão artística.\" [/i]:yltype:
:exclam: [u] Só o up não resolve, as vezes tem que procurar [/u] :exclam:

[b]This user is compatible with: D5 - D2006 / IB&FB
This user is training to: SQL Server 2005 / Oracle 10g / JAVA[/b]

[img]http://www.delphi-jedi.org/img/btn_jedinow.gif[/img]
[url]http://www.delphi-jedi.org/[/url]
_________________
<b>Nova assinatura em elaboração... ainda!! Esta é a versão "alfa"</b>
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB