Пример #1
0
        /// <summary>
        /// 単体置換スレッドスタートメソッド
        /// </summary>
        private Thread ExecRepStart()
        {
            // メインフォーム横幅
            int mainFormSizeW = dataStore.MainFormSize.Width;

            // プログレスバーフォーム
            frmPrgBar = new FrmPrgBar();
            // 事前にロードし、非表示としておく
            frmPrgBar.Show();
            frmPrgBar.Visible = false;
            // サイズ設定
            frmPrgBar.Size = new Size(mainFormSizeW * 3 / 4, 50);
            // プログレスバーフォーム開始位置
            frmPrgBar.StartPosition = FormStartPosition.Manual;
            /* 独自設定_複数置換からの呼び出し対策 */
            // 複数置換とかぶらないように下目に表示
            frmPrgBar.Location = new Point(dataStore.MainFormLoca.X + (mainFormSizeW * 1 / 4) / 2, dataStore.MainFormLoca.Y + (dataStore.MainFormSize.Height / 2) - 25);

            // 置換スレッド処理メソッドインスタンス生成
            Thread threadA = new Thread(new ThreadStart(ExecRepThread));

            // バックグラウンドフラグ
            threadA.IsBackground = true;
            // スレッドスタート
            threadA.Start();

            // スレッド内で最大値設定するためフォーム表示を一瞬遅らせる
            Thread.Sleep(500);
            // プログレスバーフォーム表示
            frmPrgBar.ShowDialog();

            return(threadA);
        }
Пример #2
0
        /// <summary>
        /// 複数置換スレッドスタートメソッド
        /// </summary>
        private Thread ExecDirRepThStart()
        {
            // メインフォーム横幅
            int mainFormSizeW = dataStore.MainFormSize.Width;

            // 複数置換用プログレスバーフォーム
            frmPrgBarMultRep = new FrmPrgBar();
            frmPrgBarMultRep.Show();
            frmPrgBarMultRep.Visible = false;
            // サイズ設定
            frmPrgBarMultRep.Size = new Size(mainFormSizeW * 3 / 4, 50);
            // プログレスバーフォーム開始位置モード
            frmPrgBarMultRep.StartPosition = FormStartPosition.Manual;
            /* 独自設定 */
            // 中心に表示
            frmPrgBarMultRep.Location = new Point(dataStore.MainFormLoca.X + (mainFormSizeW * 1 / 4) / 2, dataStore.MainFormLoca.Y + (dataStore.MainFormSize.Height / 2) - 75);
            // 親フォームのスレッドから作成のため、表示は裏にいかないのでタスクバー非表示
            frmPrgBarMultRep.ShowInTaskbar = false;

            // 置換スレッド処理メソッドインスタンス生成
            Thread threadB = new Thread(new ThreadStart(ExecDirRepThread));

            // バックグラウンドフラグ
            threadB.IsBackground = true;
            // スレッドスタート
            threadB.Start();

            // スレッド内で最大値設定するためフォーム表示を一瞬遅らせる
            Thread.Sleep(500);
            // プログレスバーフォーム表示
            frmPrgBarMultRep.ShowDialog();

            return(threadB);
        }
Пример #3
0
        private void FrmPrgBarInit()
        {
            // プログレスバーフォームインスタンス生成
            fmPrgBar = new FrmPrgBar();

            // 事前にロードし、非表示としておく
            fmPrgBar.Show();
            fmPrgBar.Visible = false;

            // プログレスバーフォーム開始位置
            fmPrgBar.StartPosition = FormStartPosition.CenterParent;
        }
Пример #4
0
        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="frm1">メインフォームクラス</param>
        /// <param name="dataStore">データ格納クラス</param>
        public InportImg(Form1 frm1, DataStore dataStore)
        {
            // メインフォーム
            fm1 = frm1;

            // プログレスバーフォーム
            fmPrgBar = new FrmPrgBar();
            // 事前にロードし、非表示としておく
            fmPrgBar.Show();
            fmPrgBar.Visible = false;

            // データ格納クラス
            dsc = dataStore;
        }