欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#實現(xiàn)簡單的聊天窗體

 更新時間:2021年07月11日 10:36:46   作者:御弟謌謌  
這篇文章主要為大家詳細介紹了C#實現(xiàn)簡單的聊天窗體,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C#實現(xiàn)簡單的聊天窗體的具體代碼,供大家參考,具體內(nèi)容如下

一、要使用(學(xué)習(xí))到的知識點

1、textBox控件

(1)功能:允許用戶輸入文本,并提供多行編輯和密碼字符掩碼功能
(2)它右什么屬性?

​ ①Multiline

​ 表示獲取或設(shè)置一個值,該值指示這是否為多行textBox控件

 textBox2.Multiline = true;//意思就是將textbox2設(shè)置為可以多行顯示

​ ②TabIndex

​ 表示獲取或設(shè)置控件在其容器內(nèi)的Tab鍵順序

textBox2.TabIndex = 0;//將光標(biāo)定位到 textBox2框中

​ ③Text

​ 表示獲取或設(shè)置與此控件關(guān)聯(lián)的文本

textBox2.Text = "名字";//設(shè)置textBox顯示的文本

2、事件

①KeyDown表示在首次按下某個鍵時發(fā)生

private void textBox2_KeyDown(object sender, KeyEventArgs e)//將KeyDown事件添加到textBox2中

②e.KeyCode表示獲取鍵盤代碼

e.KeyCode == Keys.Enter//按下鍵盤上的Enter時就執(zhí)行

​ ③AcceptButton表示獲取或設(shè)置用戶按下Enter鍵所單擊窗體上的按鈕

this.AcceptButton = button2;//將AcceptButton綁定到button2上

3、Button控件

(1)功能:當(dāng)用戶單擊它引發(fā)事件。它是一個按鈕
(2)它有什么屬性?

①Text

​表示獲取與控件關(guān)聯(lián)的文本

button1.Text = "取消";//設(shè)置button1顯示的文本為取消

​②width和height

​表示獲取控件的寬度和高度

button1.Width = 50;//設(shè)置button1的寬度(合適即可)
button1.Height = 30;//設(shè)置button1的高度(合適即可)

③top

​表示獲取控件上邊緣與容器工作區(qū)上邊緣之間的距離

button2.Top = button1.Top;//獲取button1的位置。往下

4、設(shè)置時間

DateTime.Now//表示獲取一個DateTime對象,該對象設(shè)置為此計算機上的當(dāng)前日期和時間,表示為本地時間
    //其實就是獲取此時計算機的日期和時間
DateTime表示時間上的一刻,通常以日期和當(dāng)前時間表示

5、轉(zhuǎn)義字符\r\n

"\r\n//表述換行

二、聊天窗口規(guī)則

(1)由兩個框組成,一個輸入,一個讀

(2)由兩個按鈕,可發(fā)送,可取消,按下發(fā)送即可發(fā)送消息,按下取消即可取消將要發(fā)送的消息

(3)回車可發(fā)送消息

(4)送人的消息有姓名和稱號

三、思想(分析)

(1)插入兩個輸入框,一個只可讀,一個可以寫消息

(2)將光標(biāo)定位到下邊框

(3)然后設(shè)置兩個框的寬度一樣,高度不等

(4)將下邊框的文本給上邊框?qū)崿F(xiàn)發(fā)送,然后發(fā)送完后無消息

(5)將光標(biāo)定位到下邊框

(6)優(yōu)化發(fā)送結(jié)構(gòu)(人名,號碼和稱號和時間)

(7)添加兩個按鈕,一個為取消,一個為發(fā)送

(8)將上邊框發(fā)送的內(nèi)容綁定到發(fā)送按鈕上即可發(fā)送

(9)設(shè)置按下Enter即可發(fā)送,需要綁定一些事件

(10)將光標(biāo)定位到最左邊

四、實際操作

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace 聊天窗體
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

​    private void Form1_Load(object sender, EventArgs e)
​    {
​        this.Size = new Size(600, 400);
​        textBox1.Multiline = true;//設(shè)置textbox1可以多行顯示
​        textBox1.Height = 200;//再去設(shè)定它的高就好了
​        textBox1.ReadOnly = true;//將文本框設(shè)置為只讀

​        textBox2.Multiline = true;//將textbox2設(shè)置為可以多行顯示
​        textBox2.Height = 70;//設(shè)置textbox2的高度(合適即可)
​        textBox2.Width = textBox1.Width;//獲取textBox1.Width的寬度意思就是讓textBox2和textBox1的寬度一樣
​        textBox2.TabIndex = 0;                   //將光標(biāo)定位到 textBox2框中
​        button1.Text = "取消";//設(shè)置button1顯示的文本為取消
​        button2.Text = "發(fā)送";//設(shè)置button1顯示的文本為發(fā)送
​        button1.Top = 320;//設(shè)置button1的位置,往下(合適即可)
​        button1.Width = 50;//設(shè)置button1的寬度(合適即可)
​        button1.Height = 30;//設(shè)置button1的高度(合適即可)
​        button2.Top = button1.Top;//獲取button1的位置。往下
​        button2.Width = button1.Width;//獲取button1的寬度
​        button2.Height = button1.Height;//獲取button1的高度
​        this.AcceptButton = button2;//將AcceptButton綁定到button2上,然后光標(biāo)就在最左邊

​    }

​    private void button1_Click(object sender, EventArgs e)
​    {
​        textBox2.Text = "";//取消消息
​    }

​    private void button2_Click(object sender, EventArgs e)
​    {
​        textBox1.Text+="【潛水】豬豬狹(2024415986)"+DateTime.Now+"\r\n"+"\r\n"+textBox2.Text+"\r\n";//將textBox2.Text的文本給textBox1.Text,就實現(xiàn)發(fā)送
​        //+表示鏈接,讓他顯示之前發(fā)送的信息    \r\n轉(zhuǎn)義字符,表示換行     DateTime.Now表示設(shè)置計算機當(dāng)前的日期時間
​        textBox2.Text = "";//信息發(fā)送后,清空 textBox2的文本
​    }

​    private void textBox2_KeyDown(object sender, KeyEventArgs e)
​    {
​        //KeyDown表示首次按下某個鍵時發(fā)生
​        //事件對象e   可以向我們提供有關(guān)鍵盤上的數(shù)據(jù)
​        if (e.KeyCode == Keys.Enter)//判斷如果按下鍵盤上的Enter時就執(zhí)行下列代碼,發(fā)送消息
​        {
​            textBox1.Text += "【潛水】豬豬狹(2024415986)" + DateTime.Now + "\r\n" + "\r\n" + textBox2.Text + "\r\n";//將textBox2.Text的文本給textBox1.Text,就實現(xiàn)發(fā)送
​           //+表示鏈接,讓他顯示之前發(fā)送的信息    \r\n轉(zhuǎn)義字符,表示換行     DateTime.Now表示設(shè)置計算機當(dāng)前的日期時間
​            textBox2.Text = "";//信息發(fā)送后,清空 textBox2的文本
​        }
​    }
}

}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#默認雙緩沖技術(shù)實例分析

    C#默認雙緩沖技術(shù)實例分析

    這篇文章主要介紹了C#默認雙緩沖技術(shù),實例分析了雙緩沖技術(shù)的設(shè)置與實現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • C#?WPF?ListBox?動態(tài)顯示圖片功能

    C#?WPF?ListBox?動態(tài)顯示圖片功能

    這篇文章主要介紹了C#?WPF?ListBox?動態(tài)顯示圖片,處理過程分為前臺代碼和后臺代碼,本文結(jié)合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2023-08-08
  • C# 中使用NModbus4通信庫執(zhí)行寫操作

    C# 中使用NModbus4通信庫執(zhí)行寫操作

    在C#中NModbus4庫提供了一個方便的方式來與支持Modbus協(xié)議的設(shè)備進行交互,本文就來介紹了使用NModbus4通信庫執(zhí)行寫操作,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • C#結(jié)合JavaScript實現(xiàn)手寫板簽名效果

    C#結(jié)合JavaScript實現(xiàn)手寫板簽名效果

    這篇文章主要為大家詳細介紹了C#如何結(jié)合JavaScript實現(xiàn)手寫板寫字并上傳到服務(wù)器進行處理,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-04-04
  • Unity接入百度AI實現(xiàn)通用物體和場景識別

    Unity接入百度AI實現(xiàn)通用物體和場景識別

    這篇文章主要介紹了在Unity中接入百度AI接口,從而實現(xiàn)通用物體和場景的識別,其中接口返回大類及細分類的名稱,并支持獲取識別結(jié)果對應(yīng)的百科信息。感興趣的可以學(xué)習(xí)一下
    2022-01-01
  • Unity實現(xiàn)毫秒延時回調(diào)功能

    Unity實現(xiàn)毫秒延時回調(diào)功能

    這篇文章主要為大家詳細介紹了Unity實現(xiàn)毫秒延時回調(diào)功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • C#窗體-數(shù)據(jù)庫連接及登錄功能的實現(xiàn)案例

    C#窗體-數(shù)據(jù)庫連接及登錄功能的實現(xiàn)案例

    這篇文章主要介紹了C#窗體-數(shù)據(jù)庫連接及登錄功能的實現(xiàn)案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • C#中使用angular的方法步驟

    C#中使用angular的方法步驟

    在本篇內(nèi)容里我們給大家整理了關(guān)于C#中使用angular的方法以及具體步驟內(nèi)容,有興趣的朋友們學(xué)習(xí)下。
    2019-06-06
  • C#實現(xiàn)簡單打字小游戲

    C#實現(xiàn)簡單打字小游戲

    這篇文章主要為大家詳細介紹了C#實現(xiàn)簡單打字小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • 在C#中使用指針的示例代碼

    在C#中使用指針的示例代碼

    C#向開發(fā)人員隱藏了大部分基本內(nèi)存管理操作,因為它使用了垃圾回收器和引用,但是,有時候我們也需要直接訪問內(nèi)存,例如:進行平臺調(diào)用,性能優(yōu)化等等,本文給大家介紹了在C#中使用指針的示例代碼,需要的朋友可以參考下
    2024-10-10

最新評論