示例#1
0
        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            text = textbox[(uint)(myTabControl1.SelectedTab.Tag)].Text;
            textbox[(uint)(myTabControl1.SelectedTab.Tag)].Text = "";

            if (!string.IsNullOrEmpty(text.Trim())) // Если textBox не пустой, то печатаем сообщение в richTextBox, а затем отправляем
            {
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionStart = richtbox[Convert.ToUInt32(myTabControl1.SelectedTab.Tag)].Text.Length;
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionLength = 0;
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionFont = new Font(FontFamily.GenericSerif, 8, FontStyle.Bold);
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionColor = Color.FromArgb(0, 0, 255);

                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectedText = "Я (" + DateTime.Now.ToShortTimeString() + " " + DateTime.Now.ToShortDateString() + ")";
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionStart = richtbox[(uint)(myTabControl1.SelectedTab.Tag)].Text.Length;
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionLength = 0;
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionFont = new Font(FontFamily.GenericSerif, 9, FontStyle.Regular);
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionColor = Color.Black;
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectedText = "\r\n" + text + "\r\n";
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionStart = richtbox[(uint)(myTabControl1.SelectedTab.Tag)].Text.Length;
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionLength = 0;
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectionFont = new Font(FontFamily.GenericSerif, 4, FontStyle.Regular);
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].SelectedText = "\r\n";
                richtbox[(uint)(myTabControl1.SelectedTab.Tag)].ScrollToCaret();

                if (vars.VARS.Out_message_on && vars.VARS.Sound)
                    GeneralMethods.NotifySound("OutMessage");
            }

            vk start = new vk();

            SendMessage SendMsg = new SendMessage(start.sendMsg);
            IAsyncResult res1 = SendMsg.BeginInvoke(text, (uint)myTabControl1.SelectedTab.Tag, null, null);

            res1.AsyncWaitHandle.WaitOne();

            bool success = SendMsg.EndInvoke(res1);

            if (!success)
            {
                NotifyEvent ShowNotify = new NotifyEvent(ShowNotifyWindow);
                this.Invoke(ShowNotify, "Ошибка!", "Ошибка при отправке!\nПовторите ещё раз!", (uint)0);
            }
        }