⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.cs.bak

📁 基于SKYPE做的小机器人
💻 BAK
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using SKYPE4COMLib;


namespace SkypeControl1
{
    public partial class Form1 : Form
    {
        
        private Skype skype = new SkypeClass();
        private Chat chat;
        private User user;
       // private ChatMessage chatMessage;
        public Form1()
        {
            InitializeComponent();
           Initializenotifyicon();
            this.chat = this.skype.CreateChatWith("");
            this.skype.MessageStatus += this.SkypeMessageStatusChanged;
        }

        private void axSkype1_CommandEvent(object sender, AxSKYPE4COMLib._ISkypeEvents_CommandEvent e)
        {

        }

        //初始化Notifyicon(系统托盘)
        private void Initializenotifyicon()
       {
        //   this.notifyIcon.ContextMenu = this.ContextMenuStrip;
            
            
            MenuItem[] menuitems = new MenuItem[3];

            menuitems[0] = new MenuItem();
            menuitems[0].Text = "显示";
            menuitems[0].Click += new System.EventHandler(this.showmessage);

            menuitems[1] = new MenuItem("-");

            menuitems[2] = new MenuItem();
            menuitems[2].Text = "退出";
            menuitems[2].Click += new System.EventHandler(this.ExitSelect);
            menuitems[2].DefaultItem = true;

            ContextMenu notifyMenu = new ContextMenu(menuitems); 
            this.notifyIcon.ContextMenu = notifyMenu;

            this.notifyIcon.MouseDoubleClick += this.notifyIcon_MouseDoubleClick;



       }
        //托盘的显示按钮
        public void showmessage(object sender, System.EventArgs e)
        {
            this.Show();
            if (this.WindowState == FormWindowState.Minimized)
            {
                this.WindowState = FormWindowState.Normal;
                this.Activate();
            }
        }
        //退出
        public void ExitSelect(object sender, System.EventArgs e)
        {
            //隐藏托盘程序中的图标 
            this.notifyIcon.Visible = false;

            
            
            //关闭系统 
            this.Close();
            System.Windows.Forms.Application.Exit();

        }

        private void onlineBtn_Click(object sender, EventArgs e)
        {
            this.skype.ChangeUserStatus(TUserStatus.cusOnline);
        }

        private void Awaybtn_Click(object sender, EventArgs e)
        {
            this.skype.ChangeUserStatus(TUserStatus.cusAway);
        }

        private void offlineBtn_Click(object sender, EventArgs e)
        {
            this.skype.ChangeUserStatus(TUserStatus.cusOffline);
        }

        private void ChatBtn_Click(object sender, EventArgs e)
        {
            this.chat = this.skype.CreateChatWith(this.axSkypeContactCombo1.Selection.Handle);
            messagetextBox.AppendText(this.axSkypeContactCombo1.Selection.Handle);
        }

        private void SendButton_Click(object sender, EventArgs e)
        {
            if(this.chat != null){
                this.chat.SendMessage(this.messagetextBox.Text);
                this.user = this.skype.CurrentUser;
                this.LogMessage(this.messagetextBox.Text,Color.DarkBlue,this.user.FullName);
            }
        }


		//对接受信息的处理
        void SkypeMessageStatusChanged(ChatMessage message,TChatMessageStatus status)
        {

           
            if(status == TChatMessageStatus.cmsReceived){
              //  this.chatMessage = this.skype.get_Message(0);
                this.chat = this.skype.CreateChatWith(message.FromHandle);
                
                this.LogMessage(message.Body,Color.DarkRed,message.FromDisplayName);
                //this.messagrichTextBox.AppendText(" \n" + this.chatMessage.Body+ " \n");
                if(message.Body.Equals("你好")){
                    this.chat.SendMessage("早上好啊,我是skype机器人");
                }
            }

            if (status == TChatMessageStatus.cmsSending)
            {
                if (message.Body.Equals("你好"))
                {
                    this.LogMessage(message.Body, Color.DarkRed, message.FromDisplayName);
                    this.chat.SendMessage("早上好啊,我是skype机器人");
                }
            }
            if(status == TChatMessageStatus.cmsRead){
                this.LogMessage("aa", Color.DarkBlue, message.FromDisplayName);
            }
            
        }

        private void LogMessage(string message ,Color colour,string nickname)
        {
            if (this.messagrichTextBox.TextLength > 0)
            {
                this.messagrichTextBox.AppendText("\n");
            }
            


            this.messagrichTextBox.AppendText(nickname + " : ");
            this.messagrichTextBox.AppendText(message);
            this.messagrichTextBox.SelectionStart = this.messagrichTextBox.TextLength - message.Length;
            this.messagrichTextBox.SelectionLength = message.Length;
            this.messagrichTextBox.SelectionColor = colour;
            this.messagrichTextBox.SelectionStart = this.messagrichTextBox.TextLength;
            this.messagrichTextBox.Focus();
            this.messagetextBox.Focus();
            this.messagetextBox.Text = String.Empty;
           
            
            
        }

        private void axSkypeContactCombo1_SelectionChange(object sender, AxSKYPECONTACTSLib._DSkypeContactComboEvents_SelectionChangeEvent e)
        {
            this.chat = this.skype.CreateChatWith(this.axSkypeContactCombo1.Selection.Handle);
            messagetextBox.AppendText(this.axSkypeContactCombo1.Selection.Handle);
        }

        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
           // e.Cancel = true;//取消关闭窗体
            if ((e.CloseReason == CloseReason.ApplicationExitCall) || (e.CloseReason == CloseReason.WindowsShutDown))
            {
                e.Cancel = false;
            }
            else
            {
                e.Cancel = true;
            } 

            this.Hide();
            this.ShowInTaskbar = false;
            this.notifyIcon.Visible = true;//显示托盘图标
        }

        private void notifyIcon_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            this.Show();
            if (this.WindowState == FormWindowState.Minimized)
            {
                this.WindowState = FormWindowState.Normal;
                this.Activate();
            }
        }

       


    }
}

⌨️ 快捷键说明

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