コード例 #1
0
        public void updateTextBox(string msg)
        {
            // 有調用需求
            if (this.InvokeRequired)
            {
                // 建立Dalegate 物件

                /*
                 * 建立委派物件(TextBoxDalegate)並委派使用"updateTextBox"方法
                 */
                TextBoxDalegate TBDalegate = new TextBoxDalegate(updateTextBox);

                // 調用委派的方法
                this.Invoke(TBDalegate, msg);
            }
            else
            {
                int lineCount = ConsoleTextBox.GetLineFromCharIndex(ConsoleTextBox.Text.Length);

                if (lineCount >= 100)
                {
                    ConsoleTextBox.Text = ConsoleTextBox.Text.Remove(0, (ConsoleTextBox.Lines[0].Length + Environment.NewLine.Length));
                }

                ConsoleTextBox.Text          += msg;
                ConsoleTextBox.Text          += Environment.NewLine;
                ConsoleTextBox.SelectionStart = ConsoleTextBox.Text.Length;
                ConsoleTextBox.ScrollToCaret();
            }
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: beelzebub041/GoBike
        /// <summary>
        /// 初始化
        /// </summary>
        void Initialize()
        {
            this.tbDalegate = new TextBoxDalegate(UpdateTextBox);

            this.msgQ = new Queue <string>();

            this.timer           = new System.Timers.Timer();
            this.timer.AutoReset = false;
            this.timer.Interval  = 100;
            this.timer.Enabled   = true;
            this.timer.Elapsed  += ProcessQueue;

            logger = new Logger();
            logger.SetForm(this);

            ControlCenter.Instance.Initialize(logger);
        }