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 

Copiando do ListBox - [Resolvido]
Ir à página 1, 2  Próximo
 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 3:25 pm    Assunto: Copiando do ListBox - [Resolvido] Responder com Citação

Olá pessoal!
A estrutura do ListBox está assim:

001 Teste
001 Teste
001 Teste
001 Teste
001 Teste

Como faço para copiar só a primeira coluna para outro ListBox
para ficar assim:

001
001
001
001
001

Pode ser com Memo também...

Obrigado!!


Editado pela última vez por geule em Qui Ago 12, 2010 5:38 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
joenet
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 29 de Junho de 2009
Mensagens: 148

MensagemEnviada: Qui Ago 12, 2010 5:08 pm    Assunto: Vejamos... Responder com Citação

Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
BrunoMoreyra
Colaborador
Colaborador


Registrado: Quinta-Feira, 26 de Novembro de 2009
Mensagens: 1398
Localização: Goiânia - GO / Brasília - DF

MensagemEnviada: Qui Ago 12, 2010 5:23 pm    Assunto: Re: Vejamos... Responder com Citação

Boa tarde,

só corrigindo, antes de preencher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.

_________________
Atencisamente,

Bruno Moreira Batista.
http://www.kawek.com.br/BrunoBatista
Skype: Bruno_Batysta
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 5:27 pm    Assunto: Re: Vejamos... Responder com Citação

joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.




Deu certo, obrigado, vou ver se vai dar para fazer o que estou pensando...

Obrigado


Editado pela última vez por geule em Qui Ago 12, 2010 5:31 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
BrunoMoreyra
Colaborador
Colaborador


Registrado: Quinta-Feira, 26 de Novembro de 2009
Mensagens: 1398
Localização: Goiânia - GO / Brasília - DF

MensagemEnviada: Qui Ago 12, 2010 5:28 pm    Assunto: Re: Vejamos... Responder com Citação

Boa tarde,

dá uma olhada no código que eu postei, creio que tenha corrigido o problema que deve estar acontecendo.


geule escreveu:
joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.




vc testou aí?
pq aqui está dando a msg de erro List index out of bounds...
eu estava fazendo semelhantes a esse aí, copiava só o 001, mas testa esse aí e me retorna!!

abr

_________________
Atencisamente,

Bruno Moreira Batista.
http://www.kawek.com.br/BrunoBatista
Skype: Bruno_Batysta
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 5:42 pm    Assunto: Re: Vejamos... Responder com Citação

BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
BrunoMoreyra
Colaborador
Colaborador


Registrado: Quinta-Feira, 26 de Novembro de 2009
Mensagens: 1398
Localização: Goiânia - GO / Brasília - DF

MensagemEnviada: Qui Ago 12, 2010 5:42 pm    Assunto: Re: Vejamos... Responder com Citação

Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...

_________________
Atencisamente,

Bruno Moreira Batista.
http://www.kawek.com.br/BrunoBatista
Skype: Bruno_Batysta
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 5:43 pm    Assunto: Re: Vejamos... Responder com Citação

joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



Valeu joenet, funcionou aqui..
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 5:47 pm    Assunto: Re: Vejamos... Responder com Citação

BrunoMoreyra escreveu:
Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...



Já que vc está on deixa eu te perguntar mais uma coisa..
apos ter ido para O List os valores desejados, e ao sair do edit, eu coloco 005 por exemplo, então no list quando for comparado com esse valor, escreve uma mensagem neste LB, ex, TESTE
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
BrunoMoreyra
Colaborador
Colaborador


Registrado: Quinta-Feira, 26 de Novembro de 2009
Mensagens: 1398
Localização: Goiânia - GO / Brasília - DF

MensagemEnviada: Qui Ago 12, 2010 5:52 pm    Assunto: Re: Vejamos... Responder com Citação

Boa tarde,

não entendi muito bem, não.
Mas vamos no que eu entendi, quando digitar em um Edit um código pesquisar no ListBox o código, caso encontre mostrar o nome que está posteriormente.

Código:

begin
  for I := 0 ListBox.Items.Count -1 do begin
    if (Copy(ListBox.Items[I],1,3) = Edit.Text) then begin
      Label.Caption := Copy(ListBox.Items[I],5,Length(ListBox.Items[I]));
      Break;
    end;
  end;
end;


geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...



Já que vc está on deixa eu te perguntar mais uma coisa..
apos ter ido para O List os valores desejados, e ao sair do edit, eu coloco 005 por exemplo, então no list quando for comparado com esse valor, escreve uma mensagem neste LB, ex, TESTE

_________________
Atencisamente,

Bruno Moreira Batista.
http://www.kawek.com.br/BrunoBatista
Skype: Bruno_Batysta
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 6:10 pm    Assunto: Re: Vejamos... Responder com Citação

BrunoMoreyra escreveu:
Boa tarde,

não entendi muito bem, não.
Mas vamos no que eu entendi, quando digitar em um Edit um código pesquisar no ListBox o código, caso encontre mostrar o nome que está posteriormente.

Código:

begin
  for I := 0 ListBox.Items.Count -1 do begin
    if (Copy(ListBox.Items[I],1,3) = Edit.Text) then begin
      Label.Caption := Copy(ListBox.Items[I],5,Length(ListBox.Items[I]));
      Break;
    end;
  end;
end;


geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...



Já que vc está on deixa eu te perguntar mais uma coisa..
apos ter ido para O List os valores desejados, e ao sair do edit, eu coloco 005 por exemplo, então no list quando for comparado com esse valor, escreve uma mensagem neste LB, ex, TESTE




Desculpa me expressei mal....

Apos os dados terem ido para o outro listbox...
eu digito um numero no edit e no OnExit do edit faz-se uma varredura no listbox que recebeu os dados para comparar se o numero do edit e igual ao num. no Lb, quando for igual põe-se a mensagem 'igual'...

entendeu agora????
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
BrunoMoreyra
Colaborador
Colaborador


Registrado: Quinta-Feira, 26 de Novembro de 2009
Mensagens: 1398
Localização: Goiânia - GO / Brasília - DF

MensagemEnviada: Qui Ago 12, 2010 6:11 pm    Assunto: Re: Vejamos... Responder com Citação

Boa noite,

quase parecido com o que eu fiz.


Código:

begin
  for I := 0 ListBoxDestino.Items.Count -1 do begin
    if (ListBoxDestino.Items[I],1,3 = Edit.Text) then begin
      Label.Caption := 'Igual';
      Break;
    end;
  end;
end;


geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

não entendi muito bem, não.
Mas vamos no que eu entendi, quando digitar em um Edit um código pesquisar no ListBox o código, caso encontre mostrar o nome que está posteriormente.

Código:

begin
  for I := 0 ListBox.Items.Count -1 do begin
    if (Copy(ListBox.Items[I],1,3) = Edit.Text) then begin
      Label.Caption := Copy(ListBox.Items[I],5,Length(ListBox.Items[I]));
      Break;
    end;
  end;
end;


geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...



Já que vc está on deixa eu te perguntar mais uma coisa..
apos ter ido para O List os valores desejados, e ao sair do edit, eu coloco 005 por exemplo, então no list quando for comparado com esse valor, escreve uma mensagem neste LB, ex, TESTE




Desculpa me expressei mal....

Apos os dados terem ido para o outro listbox...
eu digito um numero no edit e no OnExit do edit faz-se uma varredura no listbox que recebeu os dados para comparar se o numero do edit e igual ao num. no Lb, quando for igual põe-se a mensagem 'igual'...

entendeu agora????

_________________
Atencisamente,

Bruno Moreira Batista.
http://www.kawek.com.br/BrunoBatista
Skype: Bruno_Batysta
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 6:29 pm    Assunto: Re: Vejamos... Responder com Citação

BrunoMoreyra escreveu:
Boa noite,

quase parecido com o que eu fiz.


Código:

begin
  for I := 0 ListBoxDestino.Items.Count -1 do begin
    if (ListBoxDestino.Items[I],1,3 = Edit.Text) then begin
      Label.Caption := 'Igual';
      Break;
    end;
  end;
end;


Acho que agora vou conseguir fazer o que preciso, já tenho idéias para isso...
Obrigado mais uma vez...

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

não entendi muito bem, não.
Mas vamos no que eu entendi, quando digitar em um Edit um código pesquisar no ListBox o código, caso encontre mostrar o nome que está posteriormente.

Código:

begin
  for I := 0 ListBox.Items.Count -1 do begin
    if (Copy(ListBox.Items[I],1,3) = Edit.Text) then begin
      Label.Caption := Copy(ListBox.Items[I],5,Length(ListBox.Items[I]));
      Break;
    end;
  end;
end;


geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...



Já que vc está on deixa eu te perguntar mais uma coisa..
apos ter ido para O List os valores desejados, e ao sair do edit, eu coloco 005 por exemplo, então no list quando for comparado com esse valor, escreve uma mensagem neste LB, ex, TESTE




Desculpa me expressei mal....

Apos os dados terem ido para o outro listbox...
eu digito um numero no edit e no OnExit do edit faz-se uma varredura no listbox que recebeu os dados para comparar se o numero do edit e igual ao num. no Lb, quando for igual põe-se a mensagem 'igual'...

entendeu agora????
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
BrunoMoreyra
Colaborador
Colaborador


Registrado: Quinta-Feira, 26 de Novembro de 2009
Mensagens: 1398
Localização: Goiânia - GO / Brasília - DF

MensagemEnviada: Qui Ago 12, 2010 6:36 pm    Assunto: Re: Vejamos... Responder com Citação

Boa noite,

não entendi,

não tem nada escrito.

geule escreveu:
BrunoMoreyra escreveu:
Boa noite,

quase parecido com o que eu fiz.


Código:

begin
  for I := 0 ListBoxDestino.Items.Count -1 do begin
    if (ListBoxDestino.Items[I],1,3 = Edit.Text) then begin
      Label.Caption := 'Igual';
      Break;
    end;
  end;
end;


Acho que agora vou conseguir fazer o que preciso, já tenho idéias para isso...
Obrigado mais uma vez...

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

não entendi muito bem, não.
Mas vamos no que eu entendi, quando digitar em um Edit um código pesquisar no ListBox o código, caso encontre mostrar o nome que está posteriormente.

Código:

begin
  for I := 0 ListBox.Items.Count -1 do begin
    if (Copy(ListBox.Items[I],1,3) = Edit.Text) then begin
      Label.Caption := Copy(ListBox.Items[I],5,Length(ListBox.Items[I]));
      Break;
    end;
  end;
end;


geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...



Já que vc está on deixa eu te perguntar mais uma coisa..
apos ter ido para O List os valores desejados, e ao sair do edit, eu coloco 005 por exemplo, então no list quando for comparado com esse valor, escreve uma mensagem neste LB, ex, TESTE




Desculpa me expressei mal....

Apos os dados terem ido para o outro listbox...
eu digito um numero no edit e no OnExit do edit faz-se uma varredura no listbox que recebeu os dados para comparar se o numero do edit e igual ao num. no Lb, quando for igual põe-se a mensagem 'igual'...

entendeu agora????

_________________
Atencisamente,

Bruno Moreira Batista.
http://www.kawek.com.br/BrunoBatista
Skype: Bruno_Batysta
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
geule
Aprendiz
Aprendiz


Registrado: Sexta-Feira, 3 de Julho de 2009
Mensagens: 204

MensagemEnviada: Qui Ago 12, 2010 6:47 pm    Assunto: Re: Vejamos... Responder com Citação

BrunoMoreyra escreveu:
Boa noite,

não entendi,

não tem nada escrito.

geule escreveu:
BrunoMoreyra escreveu:
Boa noite,

quase parecido com o que eu fiz.


Código:

begin
  for I := 0 ListBoxDestino.Items.Count -1 do begin
    if (ListBoxDestino.Items[I],1,3 = Edit.Text) then begin
      Label.Caption := 'Igual';
      Break;
    end;
  end;
end;


Acho que agora vou conseguir fazer o que preciso, já tenho idéias para isso...
Obrigado mais uma vez...

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

não entendi muito bem, não.
Mas vamos no que eu entendi, quando digitar em um Edit um código pesquisar no ListBox o código, caso encontre mostrar o nome que está posteriormente.

Código:

begin
  for I := 0 ListBox.Items.Count -1 do begin
    if (Copy(ListBox.Items[I],1,3) = Edit.Text) then begin
      Label.Caption := Copy(ListBox.Items[I],5,Length(ListBox.Items[I]));
      Break;
    end;
  end;
end;


geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

disponha.

geule escreveu:
BrunoMoreyra escreveu:
Boa tarde,

só corrigindo, antes de pre


encher a lista de destino, creio que seja necessário inicializar ela, ou seja, retirar todos os itens.
E tem que percorrer até a quantidade de itens menos um, pois o looping é inicializado pelo valor 0 (zero).

Código:

var
  i:Integer;
begin
  ListaDestino.Items.Clear;
  for i:=0 to (listaOrigem.Items.Count - 1) do begin
    listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
  end;
end;


joenet escreveu:
Rapaz, testa o seguinte:

var
i:Integer;
begin
for i:=0 to listaOrigem.Items.Count do
begin
listaDestino.Items.Add(Copy(listaOrigem.Items[i], 1, 3));
end;
end;

//A função Copy vai pegar a substring do Item[i] que começa na posição 1 e vai até a 3. No caso, '001'.



obrigado BrunoMoreyra, deu certinho aqui...



Já que vc está on deixa eu te perguntar mais uma coisa..
apos ter ido para O List os valores desejados, e ao sair do edit, eu coloco 005 por exemplo, então no list quando for comparado com esse valor, escreve uma mensagem neste LB, ex, TESTE




Desculpa me expressei mal....

Apos os dados terem ido para o outro listbox...
eu digito um numero no edit e no OnExit do edit faz-se uma varredura no listbox que recebeu os dados para comparar se o numero do edit e igual ao num. no Lb, quando for igual põe-se a mensagem 'igual'...

entendeu agora????



Não tem nada escrito????

Bem, só agradecendo. Foi de grande ajuda!
Vai dá para eu fazer o que preciso com esses
exemplos que me passou!

Até....
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
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
Ir à página 1, 2  Próximo
Página 1 de 2

 
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