|
- using GeBoShi.SysCtrl;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using System.Windows.Forms;
-
- namespace GeBoShi.UI.Load
- {
- public partial class InitFrm : Form
- {
- public InitFrm()
- {
- InitializeComponent();
- this.uiTitel1.FatherForm = this;
- this.uiTitel1.ShowContrlBox(false, false, true, false);
- UIStyle.SetUIStyle(this);
- SysMgr.Instance.InitRuning += init_Process;
- }
-
- #region 事件回调
- private void init_Process(object sender, InitEventArgs e)
- {
- ShowInitMessage(e.Message);
-
- if (e.IsInitialized)
- {
- Thread.Sleep(1000);
- CloseWnd();
- }
- }
-
- private delegate void dSkip_init();
- private void Skip_init()
- {
- if (this.InvokeRequired)
- {
- dSkip_init d = new dSkip_init(Skip_init);
- this.Invoke(d);
- }
- else
- {
- this.Cursor = Cursors.Default;
- skinButton1.Visible = true;
- }
- }
-
- private delegate void dCloseWnd();
- private void CloseWnd()
- {
- if (this.InvokeRequired)
- {
- dCloseWnd d = new dCloseWnd(CloseWnd);
- this.Invoke(d);
- }
- else
- {
- this.Cursor = Cursors.Default;
- SysMgr.Instance.InitRuning -= init_Process;
- this.DialogResult = DialogResult.OK;
- this.Close();
- }
- }
-
- private delegate void dShowInitMessage(string message);
- private void ShowInitMessage(string message)
- {
- if (this.InvokeRequired)
- {
- dShowInitMessage d = new dShowInitMessage(ShowInitMessage);
- this.Invoke(d, message);
- }
- else
- {
- if (!string.IsNullOrEmpty(StsTextBox.Text))
- {
- StsTextBox.Text = StsTextBox.Text + "\r\n" + message;
- }
- else
- { StsTextBox.Text = message; }
-
- StsTextBox.SelectionStart = StsTextBox.Text.Length;
- StsTextBox.ScrollToCaret();
- }
- }
- #endregion
-
- private void InitFrm_Load(object sender, EventArgs e)
- {
- StsTextBox.Text = "";
- this.Cursor = Cursors.WaitCursor;
- backgroundWorker1.RunWorkerAsync();
- skinButton1.Visible = false;
- }
-
- private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
- {
- Thread.Sleep(500);
- try
- {
- if (!SysMgr.Instance.Initial())
- Skip_init();
- }
- catch (Exception ex)
- {
- //CloseWnd();
- }
- }
-
- private void skinButton1_Click(object sender, EventArgs e)
- {
- SysMgr.Instance.InitRuning -= init_Process;
- this.DialogResult = DialogResult.OK;
- this.Close();
- }
- }
- }
|