AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Lan Chat Prog machen

Ein Thema von RC AmOk · begonnen am 22. Jul 2007 · letzter Beitrag vom 25. Jul 2007
 
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#19

Re: Lan Chat Prog machen

  Alt 25. Jul 2007, 16:20
hier ist mal ein cod von einem selbst geschriebenen chatprogramm ist noch nicht ganz fertig hatte irgenwann keine lust mehr und die 2 version war besser aber habe ich irgenwie verschlammt
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Buttons, StdCtrls, ExtCtrls, ScktComp, XPMan;

type TEigenschaften = Record // Speichert die Eigenschaften einer Zelle
Farbe : TColor; // Hintergrundfarbe
Schrift : TFont; // Schrift
end;

type
  TForm1 = class(TForm)
    Panel1: TPanel;
    Button1: TButton;
    Edit2: TEdit;
    Button2: TButton;
    Memo2: TMemo;
    BitBtn1: TBitBtn;
    Button3: TButton;
    Button4: TButton;
    XPManifest1: TXPManifest;
    Panel2: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    ComboBox1: TComboBox;
    Label2: TLabel;
    Button5: TButton;
    FontDialog1: TFontDialog;
    ClientSocket1: TClientSocket;
    ServerSocket1: TServerSocket;
    ComboBox2: TComboBox;
    Edit1: TEdit;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure ServerSocket1ClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure Button3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button5Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
  Server:TServerSocket;
  Client:TClientSocket;
  MSG: String;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var i: integer;
begin
  for i:=0 to ComponentCount-1 do
  if Components[i] is TPanel then (Components[i] as TPanel).ParentBackground:=false;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Server.Open;
 try
 Client.Socket.SendText((Edit1.Text)+': '+Edit2.Text);
 Panel4.Caption:= ('Gesendet an: ')+ ComboBox1.Text;
 Panel4.Visible:= True;
 Memo2.Lines.Add((Edit1.Text)+': '+Edit2.Text);
 Edit2.Clear;
 Edit2.Repaint;
 except
 Showmessage('Erst mit IP Verbinden');
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Client:= TClientSocket.Create(Form1);
  try
   Panel3.Caption:= ('Verbunden mit: ')+ ComboBox1.Text;
   Client.Port:= (Combobox2.ItemIndex);
   Client.Host:= (ComboBox1.Text);
   Client.Open;
   Panel3.Visible:= True;
   Panel2.Visible:= False;
  except
   Client.Free;
   Showmessage('Client Fehler');
  end;
end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
 MSG:= Socket.ReceiveText;
 Memo2.Lines.Add({(Socket.LocalHostEdit1.Text)+': '+}MSG);
 Panel4.Visible:= True;
 Panel4.Caption:= ('Gesendet an: ')+ ComboBox1.Text;

 Edit2.Font:= FontDialog1.Font;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
 Memo2.Clear;
end;

procedure TForm1.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 If key = VK_return then
 Button2.Click;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
 FontDialog1.Execute;
 Edit2.Font:= FontDialog1.Font;
 Edit2.repaint;
 Memo2.Font:= FontDialog1.Font;
 Memo2.repaint;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
 Server.Free;
 Client.Free;
 Panel2.Visible:= True;
 Panel3.Visible:= False;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
Server:= TServerSocket.Create(Form1);
   try
   Server.Port:= (Combobox2.ItemIndex);
   Server.Open;
   Server.OnClientRead:= ServerSocket1ClientRead;
   except
   Server.Free;
   Showmessage('Server Fehler');
   end;
end;
end.
nicht sehr schön aber leicht zu verstehen
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz