Sie ist selbsterklärend. Ich benutze zur Zeit diese hier:
http://www.torry.net/vcl/internet/ir...ta295pluss.zip
Nur komm ich noch nicht ganz klar mit dieser Function:
Delphi-Quellcode:
vortex1.GetUsersFromChannel(Value:String):String;
function TVortex.GetUsersFromChannel(Value: string): string;
var
i : integer;
begin
i := FChannels.IndexOf(value);
if i <> -1 then
with TChannels(FChannels.Objects[i]) do
begin
result := GetAllNicksFromChannel;
Exit;
end;
Result := 'unknown ChannelName';
end;
Wie kann ich die Benutzernamen z.b. in einer Listbox darstellen.
Messages werden ja auch geschrieben. Wie zeige ich die an.
Bis jetzt hab ich das hier:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var I:integer;
begin
vortex1.ircoptions.mynick:=Edit1.text;
vortex1.ircoptions.Serverhost:=edit2.text;
vortex1.ircoptions.Serverport:=edit3.text;
Vortex1.ircoptions.UserIdent:=Edit4.text;
vortex1.ircoptions.Username:=Edit5.text;
vortex1.connect;
timer1.enabled:=true;
//vortex1.Join(edit6.text);
end;
procedure TForm1.Vortex1AfterJoined(Sender: TObject; Channelname: String);
begin
label2.caption:=channelname;
vortex1.GetUsersFromChannel(memo1.text);
vortex1.
end;
procedure TForm1.Vortex1IRCList(Sender: TObject; ChannelName,
Topic: String; Users: Integer; EndOfList: Boolean);
begin
listbox1.items.add(channelname+'|'+inttostr(users)+'|'+topic);
end;
procedure TForm1.Vortex1ServerError(Sender: TObject; ErrorString: String);
begin
showmessage(errorstring);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
timer1.enabled:=false;
if vortex1.isconnected=true then vortex1.ListChannels(100,1) else showmessage('Error: Can''t list channels');
timer2.enabled:=true;
end;
procedure TForm1.Timer2Timer(Sender: TObject);
var I:integer;
item:string;
listitem:tlistitem;
begin
timer2.Enabled:=false;
for i := 1 to ListBox1.Count-1 do
begin
Item := listbox1.items[i];
ListItem := ListView1.Items.Add();
ListItem.Caption := Copy(item, 1, Pos('|', item) - 1);
Delete(item, 1, Pos('|', item));
ListItem.SubItems.Add(Copy(item, 1, Pos('|', item) - 1));
Delete(item, 1, Pos('|', item));
ListItem.SubItems.Add(Copy(item, Pos('|', item) + 1, Length(item)));
end;
end;
procedure TForm1.ListView1Click(Sender: TObject);
begin
vortex1.Join(listview1.Items[form1.listview1.itemindex].caption);
end;
procedure TForm1.ClusterChat1Message(Sender: TObject; ThreadID, Nickname,
hostname, ReceivedMessage: String);
begin
listbox2.items.add(Nickname+': '+receivedmessage);
end;
procedure TForm1.ClusterChat1UserConnect(Sender: TObject; ThreadID,
Nickname, hostname: String);
begin
listbox2.items.add('Newone: '+nickname+' '+hostname);
end;
procedure TForm1.ClusterChat1ComponentReady(Sender: TObject);
begin
listbox2.items.add('Info: Component is ready');
end;
procedure TForm1.ClusterChat1ChatTimeout(Sender: TObject; Nickname,
IPAddress: String);
begin
listbox2.items.add('Timeout: '+Nickname+' '+ipaddress);
end;
procedure TForm1.ClusterChat1ChatException(sender: TObject);
begin
listbox2.items.add('Error: ChatException');
end;
procedure TForm1.ClusterChat1UserDisconnect(Sender: TObject; ThreadID,
Nickname, hostname: String);
begin
listbox2.items.add('Left: '+nickname+' '+hostname);
end;
end.