91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#如何編寫網游客戶端

發布時間:2021-11-22 11:50:17 來源:億速云 閱讀:178 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“C#如何編寫網游客戶端”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“C#如何編寫網游客戶端”這篇文章吧。

一、項目初步設置

1. 新建項目

新建一個WIndows 窗體應用(.Net Framework)

C#如何編寫網游客戶端

設置項目名稱和位置:

C#如何編寫網游客戶端

2. 界面設計

右擊工具箱內的常規,點擊選擇項

C#如何編寫網游客戶端

勾選COM 組件下的Windows Media Player

C#如何編寫網游客戶端

界面如下:

C#如何編寫網游客戶端

二、連接服務器

Form中初始化進入游戲:

private NetworkStream stream;
private TcpClient tcpClient = new TcpClient();
public Form1()
{
    InitializeComponent();
    try
    {
        //向指定的IP地址的服務器發出連接請求
        tcpClient.Connect("10.1.230.74", 3900);
        listBox1.Items.Add("連接成功!");
        stream = tcpClient.GetStream();
        byte[] data = new byte[1024];
        //判斷網絡流是否可讀            
        if (stream.CanRead)
        {
            int len = stream.Read(data, 0, data.Length);
            //Encoding ToEncoding = Encoding.GetEncoding("UTF-8");
            //Encoding FromEncoding = Encoding.GetEncoding("GB2312");
            //data=Encoding.Convert(FromEncoding, ToEncoding, data);
            //string msg = Encoding.UTF8.GetString(data, 0, data.Length);
            string msg = Encoding.Default.GetString(data, 0, data.Length);
            string str = "\r\n";
            char[] str1 = str.ToCharArray();
            string[] msg1 = msg.Split(str1);
            for (int j = 0; j < msg1.Length; j++)
            {
                listBox1.Items.Add(msg1[j]);
            }
        }
    }
    catch
    {
        listBox1.Items.Add("服務器未啟動!");
    }
}

運行結果:

C#如何編寫網游客戶端

三、發送數據

設置確定按鈕的name為btnSend,雙擊該按鈕:

C#如何編寫網游客戶端

//判斷連接是否斷開
if (tcpClient.Connected)
{
    //向服務器發送數據
    string msg = textBox1.Text;
    Byte[] outbytes = System.Text.Encoding.Default.GetBytes(msg + "\n");
    stream.Write(outbytes, 0, outbytes.Length);
    byte[] data = new byte[1024];
    //接收服務器回復數據
    if (stream.CanRead)
    {
        int len = stream.Read(data, 0, data.Length);
        string msg1 = Encoding.Default.GetString(data, 0, data.Length);
        string str = "\r\n";
        char[] str1 = str.ToCharArray();
        string[] msg2 = msg1.Split(str1);
        for (int j = 0; j < msg2.Length; j++)
        {
            listBox1.Items.Add(msg2[j]);
        }
    }
}
else
{
    listBox1.Items.Add("連接已斷開");
}

運行結果:

C#如何編寫網游客戶端

四、播放背景音樂

設置播放停止按鈕的name分別為btnPlaybtnStop:

C#如何編寫網游客戶端

播放音樂看不出效果,這里就不放運行結果了。

五、實現游戲背景圖片變換

拖入一個timer,設置其EnableTrue

C#如何編寫網游客戶端

雙擊timer,編寫代碼:

int flag = 0;
private void timer1_Tick(object sender, EventArgs e)
{
    flag++;
    string picturePath = @"C:\Users\16438\Desktop\game1\game1\game1\bin\Debug\img\" + flag + ".jpg";
    pictureBox1.Image = Image.FromFile(picturePath);
    if (flag == 3)
    {
        flag = 0;
    }
}

運行結果:

C#如何編寫網游客戶端

以上是“C#如何編寫網游客戶端”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湘潭县| 静安区| 丰都县| 钟祥市| 新竹县| 兴和县| 常山县| 荥阳市| 建德市| 敦化市| 包头市| 凉山| 保德县| 阿瓦提县| 阿拉善右旗| 福海县| 通河县| 灵璧县| 克拉玛依市| 礼泉县| 汉阴县| 富宁县| 手机| 榆社县| 临沂市| 丁青县| 双柏县| 防城港市| 广西| 柞水县| 景德镇市| 大竹县| 马尔康县| 湾仔区| 乌兰察布市| 山西省| 页游| 孙吴县| 广元市| 仁怀市| 翁牛特旗|