Ejemplo n.º 1
0
        private void btnDissolveGroup_Click(object sender, EventArgs e)
        {
            object targetGroup = this.list1.SelectedItem;

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();

            string targetGroup_s = targetGroup.ToString();

            if (targetGroup_s == null)
            {
                MessageBox.Show("请选择要解散的群!");
            }
            else
            {
                DialogResult okCancel = MessageBox.Show("确定删除所有群成员并解散?", "确定解散", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                if (okCancel == DialogResult.OK)
                {
                    wsm.DissolveGroup(currentUsername, targetGroup.ToString());
                }
                else
                {
                    return;
                }
            }
        }
Ejemplo n.º 2
0
        private void BtnCreateGroup_Click(object sender, EventArgs e)
        {
            string groupName = this.txtGroupName.Text.Trim();

            //验证输入的用户名是否为空
            if (groupName == null || groupName == string.Empty)
            {
                MessageBox.Show("请输入要创建群的名称!");
                return;
            }

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();

            //判断要创建的群是否存在
            if (wsm.IsExistTheGroup(groupName) == true)
            {
                MessageBox.Show("该群已经存在");
            }
            else
            {
                //创建群
                wsm.CreateGroup(currentUsername, groupName);
                this.Close();
            }
        }
Ejemplo n.º 3
0
        private void btnJoinGroup_Click(object sender, EventArgs e)
        {
            string GroupName = this.txtGroupName.Text.Trim();

            if (GroupName == null || GroupName == string.Empty)
            {
                MessageBox.Show("请输入要请求的群名称!");
                return;
            }

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();
            //判断用户是否存在
            bool isExist = wsm.IsExistTheGroup(GroupName);

            if (!isExist)
            {
                MessageBox.Show("该群不存在");
                return;
            }

            ///////要添加一个避免重复加入群的判断

            //添加群,如果已经在群中跑出异常
            try
            {
                wsm.JoinGroup(currentUsername, GroupName);
            }
            catch
            {
                MessageBox.Show("不能重复加群");
            }

            this.Close();
        }
Ejemplo n.º 4
0
        //刷新好友列表
        private void RefreshFriendList()
        {
            object target = this.lstOnline.SelectedItem;

            this.lstOnline.Items.Clear();
            this.lstUsers.Items.Clear();

            //请求获取好友列表
            WebServiceMessage.Friends[] friends = WsMessage.GetFriendList();

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();
            //遍历添加用户
            foreach (var f in friends)
            {
                this.lstUsers.Items.Add(f.FriendName);//第一个ListBox显示全部好友
                if (wsm.IsOnline(f.FriendName))
                {
                    this.lstOnline.Items.Add(f.FriendName);//第二个显示在线好友
                }
            }
            if (target != null)
            {
                if (this.lstOnline.Items.Contains(target))
                {
                    this.lstOnline.SelectedItem = target;
                }
            }
        }
Ejemplo n.º 5
0
        private void btnFriendToGroup_Click(object sender, EventArgs e)
        {
            object targetFriend = this.lstUsers.SelectedItem;
            object targetGroup  = this.list1.SelectedItem;

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();

            if (targetFriend == null)
            {
                MessageBox.Show("请选择要添加的好友!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            else if (targetGroup == null)
            {
                MessageBox.Show("请选择目标群", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            else
            {
                try
                {
                    wsm.AddFriendToGroup(targetFriend.ToString(), targetGroup.ToString());
                }
                catch (Exception)
                {
                    MessageBox.Show("群中已经存在该好友");
                }
            }
        }
Ejemplo n.º 6
0
        //刷新群列表
        private void RefreshGroupList()
        {
            object target = this.list1.SelectedItem;

            this.list1.Items.Clear();
            this.listBox1.Items.Clear();

            //请求获取好友列表
            WebServiceMessage.GroupMembers[] groupMembers = WsMessage.IsInGroup(currentUsername);
            WebServiceMessage.WSMessage      wsm          = new WebServiceMessage.WSMessage();
            //遍历所处的所有群
            foreach (var g in groupMembers)
            {
                this.list1.Items.Add(g.GroupName);//第一个ListBox显示全部好友
            }
            if (target != null)
            {
                WebServiceMessage.GroupMembers[] users = wsm.GroupMembers(target.ToString());
                foreach (var u in users)
                {
                    this.listBox1.Items.Add(u.GroupMember);//第一个ListBox显示全部好友
                }
                if (this.list1.Items.Contains(target))
                {
                    this.list1.SelectedItem = target;
                }
            }
        }
Ejemplo n.º 7
0
        private void FormMessage_FormClosed(object sender, FormClosedEventArgs e)
        {
            string nickname = this.CurrentUsername;

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();
            wsm.Offline(nickname);
            Application.Exit();
        }
Ejemplo n.º 8
0
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            string nickname   = this.txtNickname.Text.Trim();
            string password   = this.txtPassword.Text.Trim();
            string rePassword = this.txtRePassword.Text.Trim();

            //用户名不能为空
            if (nickname == null)
            {
                MessageBox.Show("用户名不能为空!");
                return;
            }
            //密码不能为空
            if (password == null)
            {
                MessageBox.Show("密码不能为空!");
                return;
            }
            //两次输入密码不一致
            if (password != rePassword)
            {
                MessageBox.Show("两次输入密码不一致!");
                return;
            }
            //禁用注册按钮
            this.Enabled = false;
            //创建一个代理类对象
            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();
            //验证用户是否存在
            bool isExist = wsm.HavaUser(nickname);

            if (isExist)
            {
                MessageBox.Show("该用户名已经存在,请换个用户名!");
                this.Enabled = true;
                return;
            }
            //获取执行结果
            bool over = wsm.Register(nickname, password);

            //如果执行成功,提示关闭注册对话框
            //如果执行失败,提示并让用户重试
            if (over)
            {
                MessageBox.Show("注册成功");
                this.Close();
            }
            else
            {
                MessageBox.Show("注册失败,请重试!");
                this.btnSubmit.Enabled = true;
            }
        }
Ejemplo n.º 9
0
        private void btnCancel_Click(object sender, EventArgs e)
        {
            object target = this.lstUsers.SelectedItem;

            if (target == null)
            {
                MessageBox.Show("请选择好友!");
                return;
            }

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();
            string friendName = target.ToString();

            wsm.RemoveFriend(currentUsername, friendName);
        }
Ejemplo n.º 10
0
        private void btnCancelGroupMember_Click(object sender, EventArgs e)
        {
            object targetFriend = this.listBox1.SelectedItem;
            object targetGroup  = this.list1.SelectedItem;

            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();



            if (targetFriend == null)
            {
                MessageBox.Show("请选择要删除的群成员!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            else
            {
                string targetFriend_s = targetFriend.ToString();
                string targetGroup_s  = targetGroup.ToString();

                DialogResult okCancel = MessageBox.Show("确定删除群" + targetGroup_s + "中的成员" + targetFriend_s + "吗?", "确认删除",
                                                        MessageBoxButtons.OKCancel, MessageBoxIcon.Question);


                if (okCancel == DialogResult.OK)
                {
                    //当删除群主时,出线”不能删除群主异常“
                    try
                    {
                        wsm.RemoveFriendFromGroup(targetFriend_s, targetGroup_s);
                    }
                    catch
                    {
                        MessageBox.Show("不能删除群主");
                    }
                }
                else
                {
                    return;
                }
            }
        }
Ejemplo n.º 11
0
        private void btnLogin_Click(object sender, EventArgs e)
        {
            string nickname = this.txtUsername.Text.Trim();
            string password = this.txtPassword.Text.Trim();

            //用户名不能为空
            if (nickname == null || password == string.Empty)
            {
                MessageBox.Show("用户名或密码不能不能为空!");
                return;
            }
            WebServiceMessage.WSMessage wsm = new WebServiceMessage.WSMessage();

            //创建一个Cookie容器,用于保存用户会话状态
            CookieContainer cookies = new CookieContainer();

            //向主窗体传递web服务代理类,以重复使用
            this.Master.WsMessage = wsm;

            wsm.CookieContainer = cookies;

            bool over = wsm.Login(nickname, password);

            if (over)
            {
                this.Master.CurrentUsername = nickname;

                this.CloseKey = false;
                //关闭登陆窗体
                this.Close();
            }
            else
            {
                MessageBox.Show("登录失败,请重试!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                this.btnLogin.Enabled    = true;
                this.btnRegister.Enabled = true;
            }
        }