Как сделать калькулятор в Delphi?

Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.

Как Delphi реализует многоплатформенную разработку?

Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...

Посылка и прием сообщений через сокеты

Советы » Сокеты » Посылка и прием сообщений через сокеты

    {... Здесь идет заголовок файла и определение
    формы TForm1 и ее экземпляра Form1}

    procedure

TForm1.Button1Click(Sender: TObject); begin

{Определяем порт и запускаем сервер} ServerSocket1.Port := 1025; {Метод Insert вставляет строку в массив в указанную позицию} Memo2.Lines.Insert(0,'Server starting'); ServerSocket1.Open; end

; procedure

TForm1.Button2Click(Sender: TObject); begin

{Останавливаем сервер} ServerSocket1.Active := False

; Memo2.Lines.Insert(0,'Server stopped'); end

; procedure

TForm1.ServerSocket1Listen(Sender: TObject; Socket: TCustomWinSocket); begin

{Здесь сервер "прослушивает" сокет на наличие клиентов} Memo2.Lines.Insert(0,'Listening on port '+IntToStr(ServerSocket1.Port)); end

; procedure

TForm1.ServerSocket1Accept(Sender: TObject; Socket: TCustomWinSocket); begin

{Здесь сервер принимает клиента} Memo2.Lines.Insert(0,'Client connection accepted'); end

; procedure

TForm1.ServerSocket1ClientConnect(Sender: TObject; Socket: TCustomWinSocket); begin

{Здесь клиент подсоединяется} Memo2.Lines.Insert(0,'Client connected'); end

; procedure

TForm1.ServerSocket1ClientDisconnect(Sender: TObject; Socket: TCustomWinSocket); begin

{Здесь клиент отсоединяется} Memo2.Lines.Insert(0,'Client disconnected'); end

; procedure

TForm1.ServerSocket1ClientError(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var

ErrorCode: Integer); begin

{Произошла ошибка - выводим ее код} Memo2.Lines.Insert(0,'Client error. Code = '+IntToStr(ErrorCode)); end

; procedure

TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket); begin

{От клиента получено сообщение - выводим его в Memo1} Memo2.Lines.Insert(0,'Message received from client'); Memo1.Lines.Insert(0,'> '+Socket.ReceiveText); end

; procedure

TForm1.ServerSocket1ClientWrite(Sender: TObject; Socket: TCustomWinSocket); begin

{Теперь можно слать данные в сокет} Memo2.Lines.Insert(0,'Now can write to socket'); end

; procedure

TForm1.ServerSocket1GetSocket(Sender: TObject; Socket: Integer; var

ClientSocket: TServerClientWinSocket); begin

Memo2.Lines.Insert(0,'Get socket'); end

; procedure

TForm1.ServerSocket1GetThread(Sender: TObject; ClientSocket: TServerClientWinSocket; var

SocketThread: TServerClientThread); begin

Memo2.Lines.Insert(0,'Get Thread'); end

; procedure

TForm1.ServerSocket1ThreadEnd(Sender: TObject; Thread: TServerClientThread); begin

Memo2.Lines.Insert(0,'Thread end'); end

; procedure

TForm1.ServerSocket1ThreadStart(Sender: TObject; Thread: TServerClientThread); begin

Memo2.Lines.Insert(0,'Thread start'); end

; procedure

TForm1.Button3Click(Sender: TObject); var

i: Integer; begin

{Посылаем ВСЕМ клиентам сообщение из Edit1} for

i := 0 to

ServerSocket1.Socket.ActiveConnections-1 do

begin

ServerSocket1.Socket.Connections[i].SendText(Edit1.Text); end

; Memo1.Lines.Insert(0,'< '+Edit1.Text); end

;

Другое по теме:

Категории

Статьи

Советы

Copyright © 2024 - All Rights Reserved - www.delphirus.com