Beispiel #1
0
        /// <summary>
        /// テキストボックスでEnterキー入力時のイベントを設定する。
        /// </summary>
        /// <param name="workIDType"></param>
        /// <param name="WorkID"></param>
        /// <param name="customtextBox"></param>
        public void SetTextBoxEvent(int workIDType, int WorkID, CustomTextBox customtextBox)
        {
            customtextBox.EnterKeyDown += delegate(EventArgs e)
            {
                // 入力チェックと値更新
                EnterTextBox(workIDType, WorkID, customtextBox);

                // フォーカスアウトする
                Form frm = customtextBox.FindForm();
                frm.ActiveControl = null;
            };
        }
Beispiel #2
0
        /// <summary>
        /// 数値入力の欄の数値を数値フォーマットに直す
        /// </summary>
        /// <param name="ctl"></param>
        /// <param name="WorkID"></param>
        private void textFormatCorrect(CustomTextBox ctl, int WorkID)
        {
            string showStr = "";
            double inputtedVal = 0.0;

            // 非表示中、入力中または空欄の時は行わない
            if (!ctl.Visible || ctl.Focused || ctl.Text.Length == 0) return;

            // 数値を変換してみる
            try
            {
                inputtedVal = Convert.ToDouble(ctl.Text);
            }
            catch
            {
                // 空欄にする
                ctl.Text = "";
                return;
            }

            // メモリ割当データの数値フォーマットに変更する
            int result = Program.DataController.ValueChangeToWorkIDFormatStr(SystemConstants.WORKID_TYPE_WORKDATA, WorkID, inputtedVal, ref showStr);
            if (result == SystemConstants.DCPF_SUCCESS)
            {
                if (ctl.Text != showStr) ctl.Text = showStr;
            }
        }
Beispiel #3
0
        /// <summary>
        /// テキストボックスでEnterキー入力時のイベントを設定する。
        /// 入力された値が適正かだけを確認する。メモリ更新はしない。
        /// </summary>
        /// <param name="workIDType"></param>
        /// <param name="WorkID"></param>
        /// <param name="customtextBox"></param>
        public void SetCheckOnlyTextBoxEvent(int workIDType, int WorkID, CustomTextBox customtextBox)
        {
            customtextBox.EnterKeyDown += delegate(EventArgs e)
            {
                double value;
                string message = "";

                // テキストボックスの入力チェック
                if (checkTextBoxValue(workIDType, WorkID, customtextBox.Text, out value, out message) == false)
                {
                    customtextBox.Text = "";
                    Utility.ShowErrorMsg(message);
                    return;
                }

                // フォーカスアウトする
                Form frm = customtextBox.FindForm();
                frm.ActiveControl = null;
            };
        }
Beispiel #4
0
        /// <summary>
        /// テキストボックスでエンターキー押されたときの処理
        /// スピード画面の切断長閾値の入力は制限がほかのと違うので分ける。
        /// 閾値1は0~閾値2未満
        /// 閾値2は閾値1+最小係数以上
        /// </summary>
        /// <param name="workIDType"></param>
        /// <param name="WorkID"></param>
        /// <param name="customtextBox"></param>
        public void EnterTextBoxWireLengthThres(int workIDType, int WorkID, CustomTextBox customtextBox)
        {
            double value;
            string message;
            double workdata = 0;
            string thres;

            // 形式チェック
            if (Program.MainForm.checkTextBoxValue(workIDType, WorkID, customtextBox.Text, out value, out message) == false)
            {
                Utility.ShowErrorMsg(message);
                return;
            }

            switch (WorkID)
            {
                case SystemConstants.FEED_SPEED_THRES1:

                    // 閾値2を読む
                    Program.DataController.ReadWorkData(SystemConstants.FEED_SPEED_THRES2, ref workdata);

                    thres = workdata.ToString();

                    // 適正範囲チェック
                    if (customtextBox.Text == "0" || workdata <= value)
                    {
                        string workname = Utility.GetMessageString(SystemConstants.WORK_MSG, SystemConstants.FEED_SPEED_THRES2);
                        Utility.ShowErrorMsg(SystemConstants.SYSTEM_MSG027, workname, "0", thres);
                        return;
                    }

                    break;

                case SystemConstants.FEED_SPEED_THRES2:

                    // 閾値1を読む
                    Program.DataController.ReadWorkData(SystemConstants.FEED_SPEED_THRES1, ref workdata);

                    thres = GetSpeedThresString(SystemConstants.FEED_SPEED_THRES1);

                    // 範囲チェック
                    if (value <= workdata)
                    {
                        string workname = Utility.GetMessageString(SystemConstants.WORK_MSG, SystemConstants.FEED_SPEED_THRES2);
                        Utility.ShowErrorMsg(SystemConstants.SYSTEM_MSG022, workname, thres);
                        return;
                    }

                    break;
            }

            // ワークデータを書き込む
            mainfrm.WriteWorkData(WorkID, value);
        }
Beispiel #5
0
        /// <summary>
        /// テキストボックスでエンターキー押されたときの処理。
        /// 入力をチェックして適正ならメモリに書き込み。
        /// </summary>
        /// <param name="workIDType"></param>
        /// <param name="WorkID"></param>
        /// <param name="customtextBox"></param>
        public void EnterTextBox(int WorkIDType, int WorkID, CustomTextBox customtextBox)
        {
            double value;
            string message = "";

            // テキストボックスの入力チェック
            if (checkTextBoxValue(WorkIDType, WorkID, customtextBox.Text, out value, out message) == false)
            {
                Utility.ShowErrorMsg(message);
                return;
            }

            // データの書き込み
            switch (WorkIDType)
            {
                case SystemConstants.WORKID_TYPE_WORKDATA:
                    // ワークデータを書き込む
                    mainfrm.WriteWorkData(WorkID, value);
                    break;
                case SystemConstants.WORKID_TYPE_CORRECTDATA:
                    // 補正値クデータを書き込む
                    mainfrm.WriteCorrectData(WorkID, value);
                    break;
                case SystemConstants.WORKID_TYPE_TIMINGDATA:
                    // ワークデータを書き込む
                    mainfrm.WriteTimingData(WorkID, value);
                    break;
            }
        }
Beispiel #6
0
        /// <summary>
        /// テキストボックスでエンターキー押されたときの処理。
        /// 入力をチェックだけする。
        /// </summary>
        /// <param name="workIDType"></param>
        /// <param name="WorkID"></param>
        /// <param name="customtextBox"></param>
        public void EnterCheckTextBox(int WorkIDType, int WorkID, CustomTextBox customtextBox)
        {
            double value;
            string message = "";

            // テキストボックスの入力チェック
            if (checkTextBoxValue(WorkIDType, WorkID, customtextBox.Text, out value, out message) == false)
            {
                // エラーなら入力内容をクリア:更新がかかるやつなら元の値になる
                customtextBox.Text = "";
                Utility.ShowErrorMsg(message);
                return;
            }
        }
Beispiel #7
0
        /// <summary>
        /// テキストボックスのクリックイベントを設定する。
        /// テンキー表示対応
        /// </summary>
        /// <param name="workIDType"></param>
        /// <param name="WorkID"></param>
        /// <param name="customtextBox"></param>
        public void ClickTextBoxEvent(int workIDType, int actionType, int WorkID, CustomTextBox customtextBox)
        {
            customtextBox.Click += delegate(Object sender, EventArgs e)
            {
                if (Program.SystemData.tachpanel == false) return;

                CustomTextBox ct = (CustomTextBox)sender;

                // データなしなら0に置き換え
                double preval;
                if (ct.Text == "") preval = 0;
                else preval = double.Parse(ct.Text);

                // テンキーを表示
                TenkeyControl tc = Program.TenkeyController;
                tc.tenKeyData.obj = sender;
                tc.tenKeyData.value = preval;
                tc.tenKeyData.workid = WorkID;
                tc.tenKeyData.workidtype = workIDType;
                tc.tenKeyData.actiontype = actionType;
                tc.tenkeyFormShow();

                // フォーカスアウトする
                Form frm = customtextBox.FindForm();
                frm.ActiveControl = null;
            };
        }