首頁 > 軟體

C#實現簡化QQ聊天視窗

2022-02-11 16:01:15

本文範例為大家分享了C#實現簡化QQ聊天視窗的具體程式碼,供大家參考,具體內容如下

如圖樣式,詳細步驟如下

整個表單設定

private void Form1_Load(object sender, EventArgs e)
        {
            this.BackColor = Color.Chocolate;//設定表單背景顏色
            this.Text = "與張某正在聊天...";//設定表單文字內容
            this.Size = new Size(450,400);//設定表單大小
            //設定表單在工作區居中顯示
            this.Location = new  Point(Screen.PrimaryScreen.WorkingArea.Width/2-this.Width/2,Screen.PrimaryScreen.WorkingArea.Height/2-this.Height/2) ;
        }

新增兩個textbox分別為聊天內容與輸入框;
新增兩個button分別為抖一抖與傳送;

抖動事件

private void button1_Click(object sender, EventArgs e)
        {   //抖動事件
            int x = this.Left;
            int y = this.Top;
            for (int n = 0; n < 3; n++)
            {    //新增using System.Threading;
                this.Location = new Point(x - 3, y);
                Thread.Sleep(20);//掛起20毫秒
                this.Location = new Point(x - 3, y - 3);
                Thread.Sleep(20);
                this.Location = new Point(x, y - 3);
                Thread.Sleep(20);
                this.Location = new Point(x + 3, y - 3);
                Thread.Sleep(20);
                this.Location = new Point(x + 3, y + 3);
                Thread.Sleep(20);
                this.Location = new Point(x, y + 3);
                Thread.Sleep(20);
                this.Location = new Point(x - 3, y + 3);
                Thread.Sleep(20);
                this.Location = new Point(x - 3, y);
                Thread.Sleep(20);
                this.Location = new Point(x, y);
            }
        }

傳送事件

private void button2_Click(object sender, EventArgs e)
        {    //傳送時間
            if (textBox2.Text!="")//當輸入欄不為空內容時
            {   //textbox1內容等於textbox1原本內容(聊天記錄)+現在的時間+發話人+textbox2的輸入內容
                textBox1.Text = textBox1.Text + DateTime.Now + "rn" + "李某:"+textBox2.Text+"rn";
                textBox2.Text= "";//清空輸出框

            }
        }

新增卷軸

private void textBox1_TextChanged(object sender, EventArgs e)
        {
            //在textbox1屬性設定scrollbars卷軸顯示
            //滾輪顯示最後一行
            this.textBox1.SelectionStart = this.textBox1.Text.Length;
            this.textBox1.ScrollToCaret();
            //設定lcon型別圖示
        }

新增鍵盤事件
(Enter實現傳送功能)

private void textBox2_KeyDown(object sender, KeyEventArgs e)
        {  //在輸入框內新增鍵盤事件,Enter實現傳送功能
            if (e.KeyCode == Keys.Enter)
            {
                button2_Click(sender, e);
            }
        }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com