Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Ganz einfacher Chat (https://www.delphipraxis.net/8947-ganz-einfacher-chat.html)

-homer- 15. Sep 2003 18:44


Ganz einfacher Chat
 
high,
ich hab mal eine Frage: Habt ihr eine Idee wie ich einen ganz einfachen Chat programmieren kann??? Es soll ein EditFeld geben, ein MemoFeld und ein send Knopf geben! Das Memo Feld soll nicht alle, sondern nur die letzte Nachricht anzeigen!!!

Ich wäre euch sehr dankbar wenn ihr mir das erklären würdet
-homer- :oops:

Alexander 15. Sep 2003 18:54

Re: Ganz einfacher Chat
 
Du kannst entweder die Indy-Komponenten nutzen (da gibt es viele Demos) oder die TClientSockets und TServerSockets da lassen sich hier bestimmt auch viele Beispiele finden ;-)

Du kannst natürlich auch jede andere Kompo nehmen, allerdings sind die Indies wohl die besten...

fkerber 15. Sep 2003 18:55

Re: Ganz einfacher Chat
 
Hi!

Wofür wurde denn google erfunden? 8)

Also man suche und finde:
http://www.faqsen.de/delphi/tutorials.jsp

siehe 4. von oben!

ciao fkerber

Chris1986 15. Sep 2003 19:20

Re: Ganz einfacher Chat
 
Hi.
Also, das hast du selbst mit Server in 5Minuten programmiert.

Wir brauchen einen Server, der die Nachrichten annimmt und sie dann einfach auf alle Clients verteilt.

Wir bauen zunächst den Server.
Du brauchst ein Memo-Feld, und einen ServerSocket. Den findest du, wenn du auf den Registerreiter "Internet" klickst.

Jetzt gehts ans Programmieren:

In den Properties des Sockets gibst du unter Port den Wert 6712 ein. Dann klick auf den Event OnClientRead rechts im Objektinspektor. Im Code deklarierst du die Variablen und schreibst den kurzen Quelltext;
Delphi-Quellcode:
var
i :integer;
msg :string;

begin
Memo1.lines.add (Socket.ReceiveText);
For I := 0 to ServerSocket1.Socket.ActiveConnections - 1 do
begin // Anzahl der Teilnehmer
with ServerSocket1.Socket.Connections [I] do // Auswahl des Teilnehmers
if (Connected) then SendText(Socket.RemoteHost': '+msg); // Text senden
end;
end;
Dann setzt du den Socket auf Active=True (geht auch im Objektinspektor)
Dein Server ist fertig.

Jetzt der Client.
Du brauchst 1x Memofeld, 2x Editfeld, 2x Button & 1x ClientSockt (auch zu finden wenn du auf den Reiter "Internet klickst"

Das Eine Edit-Feld ist für die Ip des Servers, das andere zum schreiben der Texte. Der eine Button um die IP zu setzen und der andere um den Text zu versenden.
Im Memofeld wird die Nachricht angezeigt.

Felder anordnen, dann gehts mit dem programmieren los.

Klick auf den Button zum Speichern der IP.
Hier brauchst du folgenden Quelltext:

Delphi-Quellcode:
begin
clientsocket1.Host := edit2.text; //IP wird gespeichert
clientsocket1.Active := True //Der Socker wir aktiviert
end;
Um den Text verschicken zu können, klickst du auf den Button, der später deinen Text versenden soll und tippst:

Delphi-Quellcode:
begin
if ClientSocket1.active=true
then //Im Falle das ClientSocket verbunden ist wird die Message aus edit1 verschickt
ClientSocket1.Socket.SendText(edit1.text);
edit1.text:=''
end;
In den Properties des ClietnSockets gibst du wieder den Port 6712 an. Dann Doppelklick auf den Event OnRead.
Jetzt musst du deinem Chatprogramm noch sagen, was er mit einer Mesage machen soll, die er erhält.

Folgender Code muss in der OnRead Prozedur eingetragen werden:
Delphi-Quellcode:
Memo1.Lines.clear; //memo1 wird gelöscht
Memo1.Lines.Add(Socket.ReceiveText); //text wird eingetragen.
Das war's dein Server und dein Client sind fertig.

Tipp: Wenn du im Client "localhost" eintippst werden die Nachrichten an deinen eigenen PC geschickt. So kannst du das Programm testen.

Ausserdem kannst du beliebig viele Clients von verschiedensten Computern mit dem Server verbinden

Viel Spaß
CU
Christian

Chris1986 15. Sep 2003 19:23

Re: Ganz einfacher Chat
 
Zitat:

Also man suche und finde:
http://www.faqsen.de/delphi/tutorials.jsp
Hast du mal versucht den Thread zu öffnen? "404 Error" :lol:


Cu
Christian

-homer- 15. Sep 2003 20:26

Vielen Dank
 
high,
vielen dank an alle!
ich glaube mit eurer Hilfe kann ich nun einen Caht programmieren!
thx -homer-

besonderen dank an christian

fkerber 15. Sep 2003 20:43

Re: Ganz einfacher Chat
 
Zitat:

Zitat von Chris1986
Hast du mal versucht den Thread zu öffnen? "404 Error"


:oops: :oops: :oops: Sorry, hab den Link nicht gecheckt!

Sorry!

ciao


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz