Winform DevExpress控件庫(二) 使用SplashScreenManager控件定製程序加載頁面

SplashScreenManager控件:主要做用是顯示在進行耗時操做時的等待界面;windows


位於 工具箱 -> Navigation & Layout(導航欄與佈局類控件) 目錄下;函數


在工具箱輸入名稱SplashScreenManager檢索,而後直接拖拽到面板上即可使用;工具



SplashScreenManager控件總體屬性描述:(選中SplashScreenManager控件實例,打開屬性窗口


藍色爲經常使用屬性    紅色爲未知屬性、幾乎不會用到或不多用到的屬性、其餘託管屬性、暫時不須要咱們去處理的屬性佈局



Behavior(行爲)  
    Properties(屬性)  
        AllowGlowEffect (bool)開啓發光特效(目前測試了並未看出效果)
        ClosingDelay (int)淡入淡出效果的延遲時間(毫秒)
        UseFadeInEffect (bool)使用淡入效果
        UseFadeOutEffect (bool)使用淡出效果
SplashForms  
        ActiveSplashFormTypeInfo (SplashScreen)當前激活的加載界面
佈局  
        SplashFormLocation(X,Y) (int)加載界面在屏幕上的位置
SplashFormStartPosition (enum)加載界面初始位置,爲Manual時上一個屬性生效
設計  
        (Name) (string)控件名稱,用於在代碼中引用(惟一性)
GenerateMember (bool)在實例中生成成員變量
Modifiers (enum)成員變量的修飾詞
數據  
    (ApplicationSettings)  
(PropertyBinding) 未知
   



























1、新建一個加載界面:


SplashScreenManager控件只是做爲加載界面的統一管理器,咱們要使用加載界面,須要自行建立加載界面,兩種方法以下:
測試


一、點擊SplashScreenManager控件右上角的三角箭頭點開任務列表,而後點擊Add Splash Screen,即可以建立一個SplashScreen窗口,建立完成以後能夠在項目資源管理器中看到此窗體,並自動將其設置爲當前激活的加載界面,這個設置爲當前激活界面有什麼用呢,其實沒什麼用:spa




而後下面會有4個屬性設置,正好是對應上方屬性欄中的前四個屬性。設計


二、在項目資源管理器中直接建立SplashScreen窗口:code


步驟:右擊項目名稱 -> 添加 -> windows窗體 -> DevExpress v15.2 Template Gallery -> Splash Screen -> Add Itemorm


建立完成以後,點擊SplashScreenManager控件右上角的三角箭頭點開任務列表,在Active Splash Form一欄選擇咱們剛建立的SplashScreen窗口,將其手動設置爲當前激活的加載界面:blog




2、使用加載界面


在代碼中使用加載界面,打開Form1.cs(本身的主窗口類),在構造函數中加入以下代碼:

public Form1()
        {
            //系統資源加載
            Loading();

            InitializeComponent();

            //加載完成
            LoadingCompleted();
        }
        /// <summary>
        /// 系統資源加載
        /// </summary>
        private void Loading()
        {
            SplashScreenManager.ShowForm(typeof(SplashScreen1));
            Thread.Sleep(5000);
            //加載資源
        }
        /// <summary>
        /// 加載完成
        /// </summary>
        private void LoadingCompleted()
        {
            SplashScreenManager.CloseForm();
        }

運行一下,咱們即可以看到一個不錯的加載界面效果,在模擬的資源加載(睡眠5秒)以後便打開主窗體:



詳解:

顯示加載界面的方法,以下:

一、SplashScreenManager.ShowForm(typeof(你的SplashScreen名));

  這裏的SplashScreen能夠是當前場景中的任何一個SplashScreen窗口,並不是必定是剛纔那個設置爲當前激活窗口的屬性。

關閉加載界面的方法,以下:

二、SplashScreenManager.CloseForm();

  這個方法能夠關閉當前程序裏的全部加載窗口,包括後面要說的等候窗口。


3、新建一個等候界面


SplashScreenManager控件只是做爲等候窗口的統一管理器,咱們要使用在耗時操做顯示的等候界面,須要自行建立等候界面,兩種方法以下:


一、點擊SplashScreenManager控件右上角的三角箭頭點開任務列表,而後點擊Add Wait Form,即可以建立一個WaitForm窗口,建立完成以後能夠在項目資源管理器中看到此窗體,並自動將其設置爲當前激活的等候窗口,這個設置爲當前激活窗口有什麼用呢,對於等候窗口仍是有用:





二、在項目資源管理器中直接建立WaitForm窗口:


步驟:右擊項目名稱 -> 添加 -> windows窗體 -> DevExpress v15.2 Template Gallery -> Progress Indicator -> Add Item


建立完成以後,點擊SplashScreenManager控件右上角的三角箭頭點開任務列表,在Active Splash Form一欄選擇咱們剛建立的WaitForm窗口,將其手動設置爲當前激活的等候界面:





4、使用等候界面


在代碼中使用等候界面(執行一些耗時操做時這樣作是很是友好的),打開Form1.cs(本身的主窗口類),在構造函數中加入以下代碼:

        public Form1()
        {
            InitializeComponent();

            //系統資源加載
            Loading();

            //加載完成
            LoadingCompleted();
        }
        /// <summary>
        /// 系統資源加載
        /// </summary>
        private void Loading()
        {
            splashScreenManager2.ShowWaitForm();
            Thread.Sleep(5000);
            //加載資源
        }
        /// <summary>
        /// 加載完成
        /// </summary>
        private void LoadingCompleted()
        {
            splashScreenManager2.CloseWaitForm();
        }

運行一下,咱們即可以看到一個不錯的等候界面效果,在模擬的資源加載(睡眠5秒)以後便打開主窗體(不過等候窗口不適合用在啓動時,我這裏只是作個例子哈):



詳解:

顯示等候界面的方法不一樣於加載界面,有兩種,以下:

一、實例法:用實例的當前激活界面顯示(因此SplashScreenManager那個屬性Active Splash Form對於WaitForm有用,用處就是將當前實例綁定到該WaitForm

你的SplashScreenManager實例名.ShowWaitForm();

  這裏只會顯示「你的SplashScreenManager實例名」的屬性Active Splash Form對應的WaitForm。

二、全局法:用SplashScreenManager類顯示

SplashScreenManager.ShowForm(typeof(你的WaitForm名));


關閉等候界面的方法,對應兩種顯示方法而不一樣,以下:

一、你的SplashScreenManager實例名.CloseWaitForm();

二、 SplashScreenManager.CloseForm();


結語:


好了,基本狀況就是這樣了,對於加載界面以及操做等候界面提及來也就是兩個Form而已,能夠本身定製不少東西,固然其實不用藉助SplashScreenManager控件也很好實現這兩種需求,主要就是一個顯示窗口及隱藏窗口的操做。

相關文章
相關標籤/搜索