乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Delphi中關(guān)于NMUDP控件的用法(原創(chuàng))

       jojo1981 2006-08-24

      Delphi中關(guān)于NMUDP控件的用法(原創(chuàng))

      likl

      Delphi (2001-07-19 16:26:53)


       

      在DELPHI中有一控件NMUDP,下面我們?nèi)チ私膺@一控件的具體用法。
      首先,在DELPHI中創(chuàng)建一新的application,我們在From中加入:
          Memo1: TMemo
          Memo2: Tmemo
          Button1: TButton
          NMUDP1: TNMUDP
      其中:Memo1是接受數(shù)據(jù)顯示框
            Memo2是NMUDP狀態(tài)顯示框
            Button1是用于發(fā)送數(shù)據(jù)按鈕
            NMUDP1是client和server用于發(fā)送和接受數(shù)據(jù)控件

      程序代碼如下:

      unit Unit1;

      interface

      uses
        Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
        StdCtrls, NMUDP;

      type
        TForm1 = class(TForm)
          NMUDP1: TNMUDP;
          Button1: TButton;
          Memo2: TMemo;
          Memo1: TMemo;
          procedure Button1Click(Sender: TObject);
          procedure NMUDP1BufferInvalid(var handled: Boolean;
            var Buff: array of Char; var length: Integer);
          procedure NMUDP1DataReceived(Sender: TComponent; NumberBytes: Integer;
            FromIP: String; Port: Integer);
          procedure NMUDP1DataSend(Sender: TObject);
          procedure NMUDP1Status(Sender: TComponent; status: String);
          procedure NMUDP1InvalidHost(var handled: Boolean);
        private
          { Private declarations }
        public
          { Public declarations }
        end;

      var
        Form1: TForm1;

      implementation

      {$R *.DFM}

      procedure TForm1.Button1Click(Sender: TObject);
      var
        C: Array [1..3] of Char;
      begin
        C := ‘cat‘;
        NMUDP1.RemoteHost := ‘127.0.0.1‘;
        NMUDP1.ReportLevel := Status_Basic;
        NMUDP1.LocalPort := 6668;
        NMUDP1.RemotePort := 6668;
        NMUDP1.SendBuffer(C, 3);
      end;

      procedure TForm1.NMUDP1BufferInvalid(var handled: Boolean;
        var Buff: array of Char; var length: Integer);
      begin
        ShowMessage(‘Buffer Invalid: Buffer contains no data‘);
      end;

      procedure TForm1.NMUDP1DataReceived(Sender: TComponent;
        NumberBytes: Integer; FromIP: String; Port: Integer);
      var
        C: array [1..3] of Char;
        I: Integer;
      begin
        if NumberBytes <= 3 then
        begin
          NMUDP1.ReadBuffer(C, I);
          Memo1.Lines.Add(C+‘: received ‘+IntToStr(I)+‘ bytes from ‘+FromIP+‘ on port ‘+IntToStr(Port));
        end
        else
          Memo1.Lines.Add(IntToStr(I)+‘ bytes incoming, buffer too small‘);
      end;

      procedure TForm1.NMUDP1DataSend(Sender: TObject);
      begin
        Memo2.Lines.Add(‘Data sent‘);
      end;

      procedure TForm1.NMUDP1Status(Sender: TComponent; status: String);
      begin
        Memo2.Lines.Add(status);
      end;

      procedure TForm1.NMUDP1InvalidHost(var handled: Boolean);
      var
        S: String;
      begin
        S := NMUDP1.RemoteHost;
        if InputQuery(‘Invalid host‘, ‘Specify valid hostname: ‘, S) then
        begin
          NMUDP1.RemoteHost := S;
          handled := TRUE;
        end;
      end;

      end.

      本程序在Windows98+Delphi5調(diào)試通過。

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多