c14_2f.cpp

来自「C++Builder编程实例详解,用具体的例子阐明C++的一些基本操作,所有程序」· C++ 代码 · 共 55 行

CPP
55
字号
//---------------------------------------------------------------------------
#include <vcl\vcl.h>
#pragma hdrstop

#include "C14_2f.h"
//---------------------------------------------------------------------------
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
    UDP1->LocalPort = 1024; // 设置接收端口
    UDP1->RemotePort = 1024; // 设置发送端口
    UDP1->RemoteHost = "129.200.255.255"; // 实验主机的IP地址为:“129.200.2.1”
                                // “129.200.255.255”为该网络的通播地址
                                // 通播功能只能用于当前网络中,
                                // 由于IP地址分为网络地址和主机地址两部分
                                // 本IP地址(“129.200.2.1”)为B类地址,
                                //“129.200”为网络地址,“.2.1”为主机地址
                                // 通播地址的网络地址不便,主机地址为全一,
                                // 对应当前主机,则为“129.200.255.255”
                                // 注:A类地址的通播地址为:“xxx.255.255.255”
                                //     B类地址的通播地址为:“xxx.xxx.255.255”
                                //     C类地址的通播地址为:“xxx.xxx.xxx.255”
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Memo1KeyDown(TObject *Sender, WORD &Key,
	TShiftState Shift)
{
    if( Key == VK_RETURN)
    {
        // 如果按回车键,发送当前行
        UDP1->SendData(Memo1->Lines->Strings[Memo1->Lines->Count - 1]);
    }

}
//---------------------------------------------------------------------------
void __fastcall TForm1::UDP1DataArrival(TObject *Sender, int bytesTotal)
{
    Variant Data; // 设置接收缓冲区
                  // Variant 类是可变数据类,用于处理不同类型的数据。

    UDP1->GetData(Data, VT_BSTR); // 接收数据
    Memo2->Lines->Add(Data); // 在Memo2中显示收到的数据
    Bar->SimpleText = "收到数据,来自:" + UDP1->RemoteHostIP; // 显示发送方IP地址。
                                          // 当UDP控件收到数据后,
                                          // 在其 RemoteHostIP 属性中保存对方IP地址。
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?