Ejemplo n.º 1
0
        public void showmsg(TextBox tb)
        {
            if (list_msgdat.Count == 0 || tb == null)
            {
                return;
            }

            while (list_msgdat.Count > 0)
            {
                MsgData msg = list_msgdat.First();
                if ((msg.msg_type & MsgCfg) != 0)
                {
                    tb.AppendText(msg.ToString() + "\r\n");
                }

                if (((int)msg.msg_type & ((int)MsgCfg) >> 8) != 0)
                {
                    SaveMsg(msg.ToString());
                }
                if (tb.Lines.Count() > MsgMaxLine / 2)
                {
                    List <string> str_list = tb.Lines.ToList();
                    str_list.RemoveAt(0);
                    tb.Lines = str_list.ToArray();
                }

                tb.SelectionStart = tb.Text.Length;
                tb.ScrollToCaret();

                lock (LockObj)
                {
                    list_msgdat.RemoveFirst();
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 在RichTextBox中显示信息
        /// </summary>
        /// <param name="rtb"></param>
        public void showmsg(RichTextBox rtb)
        {
            if (list_msgdat.Count == 0 || rtb == null)
            {
                return;
            }

            while (list_msgdat.Count > 0)
            {
                MsgData msg = list_msgdat.First();
                if ((msg.msg_type & MsgCfg) != 0)
                {
                    rtb.AppendText(msg.ToString() + "\r\n");
                    rtb.SelectedText = msg.ToString() + "\r\n";

                    if (msg.msg_type == EM_MSGTYPE.DBG)
                    {
                        rtb.SelectionColor = System.Drawing.Color.DarkGray;
                    }
                    else if (msg.msg_type == EM_MSGTYPE.NOR)
                    {
                        rtb.SelectionColor = System.Drawing.Color.Blue;
                    }
                    else if (msg.msg_type == EM_MSGTYPE.WAR)
                    {
                        rtb.SelectionColor = System.Drawing.Color.DarkOrange;
                    }
                    else if (msg.msg_type == EM_MSGTYPE.ERR)
                    {
                        rtb.SelectionColor = System.Drawing.Color.Red;
                    }
                }

                if (((int)msg.msg_type & ((int)MsgCfg) >> 8) != 0)
                {
                    SaveMsg(msg.ToString());
                }
                if (rtb.Lines.Count() > MsgMaxLine / 2)
                {
                    rtb.Lines[0].Remove(0);
                }

                rtb.SelectionStart = rtb.Text.Length;
                rtb.ScrollToCaret();

                lock (LockObj)
                {
                    list_msgdat.RemoveFirst();
                }
            }
        }
Ejemplo n.º 3
0
        static void Main(string[] args)
        {
            EndpointAddress ea    = new EndpointAddress("http://127.0.0.1:8000/SiteMsgService/");
            ISiteMsgService proxy = ChannelFactory <ISiteMsgService> .CreateChannel(new BasicHttpBinding(), ea);

            for (int i = 0; i < 10; i++)
            {
                MsgData msg = new MsgData();
                msg.MsgLable     = "WebMsg";
                msg.MsgContent   = "快速启动";
                msg.MsgPrivilege = "High";
                msg.MsgTime      = DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss");

                string str = msg.ToString();

                proxy.SendMsgToSever(msg);

                Thread.Sleep(2000);
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 在表格中显示信息
        /// </summary>
        /// <param name="dgv"></param>
        public void showmsg(DataGridView dgv)
        {
            if (list_msgdat.Count == 0 || dgv == null)
            {
                return;
            }
            //bupdate = false;

            //create col
            if (dgv.ColumnCount < 3)
            {
                dgv.Columns.Clear();
                dgv.Columns.Add("dt", "时间");
                dgv.Columns.Add("type", "类型");
                dgv.Columns.Add("disc", "内容");
                dgv.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                dgv.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                dgv.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
                dgv.Columns[2].FillWeight   = 100;
                dgv.Columns[2].SortMode     = DataGridViewColumnSortMode.NotSortable;

                dgv.ColumnHeadersHeight      = 18;
                dgv.RowHeadersVisible        = false;
                dgv.ReadOnly                 = true;
                dgv.AllowUserToAddRows       = false;
                dgv.AllowUserToResizeColumns = false;
                dgv.AllowUserToResizeRows    = false;
                dgv.SelectionMode            = DataGridViewSelectionMode.FullRowSelect;
                dgv.ScrollBars               = ScrollBars.Vertical;
                dgv.CellDoubleClick         += new System.Windows.Forms.DataGridViewCellEventHandler(showtext);
                dgv.Rows.Clear();
            }


            while (list_msgdat.Count > 0)
            {
                try
                {
                    MsgData msg = list_msgdat.First();
                    if ((msg.msg_type & MsgCfg) != 0)
                    {
                        int             idx = dgv.Rows.Add();
                        DataGridViewRow row = dgv.Rows[idx];

                        row.Cells[0].Value = msg.dt.ToString("HH:mm:ss.fff");
                        row.Cells[1].Value = msg.msg_type.ToString();
                        row.Cells[2].Value = msg.msg;

                        if (msg.msg_type == EM_MSGTYPE.DBG)
                        {
                            row.DefaultCellStyle.BackColor = dgv.BackgroundColor;
                        }
                        else if (msg.msg_type == EM_MSGTYPE.NOR)
                        {
                            row.DefaultCellStyle.BackColor = System.Drawing.Color.LightCyan;
                        }
                        else if (msg.msg_type == EM_MSGTYPE.WAR)
                        {
                            row.DefaultCellStyle.BackColor = System.Drawing.Color.Wheat;
                        }
                        else if (msg.msg_type == EM_MSGTYPE.ERR)
                        {
                            row.DefaultCellStyle.BackColor = System.Drawing.Color.Pink;
                        }
                        else if (msg.msg_type == EM_MSGTYPE.SYS)
                        {
                            row.DefaultCellStyle.BackColor = dgv.BackgroundColor;
                        }

                        dgv.FirstDisplayedScrollingRowIndex = idx;
                        if (dgv.RowCount > MsgMaxLine)
                        {
                            dgv.Rows.RemoveAt(0);
                        }
                    }

                    if (((int)msg.msg_type & ((int)MsgCfg) >> 8) != 0)
                    {
                        SaveMsg(msg.ToString());
                    }
                    //if (list_msgdat.Count % 10 == 0)
                    //{
                    //    Application.DoEvents();
                    //    Thread.Sleep(1);
                    //}
                }
                catch (Exception ex)
                {
                }

                lock (LockObj)
                {
                    list_msgdat.RemoveFirst();
                }
            }
        }