Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #13  
Antiguo 31-01-2010
Avatar de DriverOp
DriverOp DriverOp is offline
Miembro
 
Registrado: ago 2007
Posts: 93
Poder: 17
DriverOp Va por buen camino
Cita:
Empezado por Gean Ver Mensaje
claro, pero con ese codigo me devuelve lo que te he puesto en el mensaje anterior, lo que me gustaria es que se quedasen en lineas distintas en un memo, o preferiblemente en items diferentes en un list Box
Ah, comprendo, parece que ANicknameList devuelve todos los nicks de un canal en una línea y en la siguiente línea los de otro canal y así sucesivamente.

Pues habrá que parsear el string donde están los nicks que te interesan, digo yo. Me parece extraño pero no tengo Indy10 para probar lo que dices. Como sea, este código te puede ayudar a parsear la cadena que tiene los nicks:

Código Delphi [-]
function GetToken(Cadena:string; Separador:char; Token:integer):string;
var
   Posicion:integer;
begin
     while Token > 1 do begin
       Delete(Cadena,1,Pos(Separador,Cadena));
       Dec(Token);
     end;
     Posicion:=Pos(Separador,Cadena);
     if Posicion=0 then
       Result:=cadena
     else
       Result:=Copy(Cadena,1,Posicion-Length(Separador));
end;

function GetTokenCount(Cadena:string; Separador:char):integer;
var
   Posicion:integer;
begin
  Posicion:=Pos(Separador,Cadena);
  Result:=1;
  if Cadena <> '' then
    begin
      if Posicion <> 0 then
        begin
        while Posicion <> 0 do
          begin
            Delete(Cadena,1,Posicion);
            Posicion:=Pos(Separador,Cadena);
            Inc(Result);
          end; // while
      end; // if
  end // if
    else Result:=0;
end;

procedure TForm2.IdIRC1NicknamesListReceived(ASender: TIdContext;
  const AChannel: string; ANicknameList: TStrings);
var
  Str: string;
  n: integer;
begin
  Str:=ANicknameList.Strings[1]; { Según el código es el string en la posición 1 el que te interesa }
  for n:=1 to GetTokenCount(Str,' ') do
    Memo1.Lines.Append(GetToken(Str,' ',n));
end;
En el TMemo obtendrás algo más que los nicks pero supongo que sabrás qué hacer con el resto.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema FTP Server con Indy jusnjosesch Internet 1 24-07-2008 03:05:02
Problema con indy y cadena con & sabato48 Internet 0 14-12-2007 00:00:33
Problema con indy 10 JULIPO Internet 0 04-11-2006 08:49:46
Problema con Thread e Indy diegofhernando Varios 3 30-03-2005 22:20:24
Que problema con las INDY!!!!! diegofhernando Internet 6 13-11-2003 20:13:37


La franja horaria es GMT +2. Ahora son las 18:45:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi