程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> EyesBaby功能實現之窗口漸現效果

EyesBaby功能實現之窗口漸現效果

編輯:.NET實例教程

窗口漸現效果主要是增強軟件的用戶體驗。目前winform程序在Vista/Win7上已經自動具備了該功能,所以只有在XP等早期版本系統上才有勇武之地。

  說說具體實現吧:-)

  1.利用Timer控件控制窗體的透明度(Opacity)。

        /// <summary>
        /// 顯示窗體
        /// </summary>
        private void ShowWin()
        {
            this.tsmiShowHide.Text = "隱藏";
            this.SetWindowstate();
            this.Opacity = 0;
            // 打開窗口漸現效果
            Timer tStart = new Timer();
            tStart.Interval = 100;
            tStart.Tick += new EventHandler(tStart_Tick);
            tStart.Start();
        }
        /// <summary>
        /// 隱藏窗體
        /// </summary>
        private void HideWin()
        {
            this.tsmiShowHide.Text = "顯示";
            // 關閉窗口漸現效果
            Timer tClose = new Timer();
            tClose.Interval = 100;
            tClose.Tick += new EventHandler(tClose_Tick);
            tClose.Start();
        }
        /// <summary>
        /// 關閉窗體漸現效果
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void tClose_Tick(object sender, EventArgs e)
        {
            // 每一次執行透明度減少10%
            this.Opacity -= 0.1;
            if (this.Opacity <= 0)
            {
                ((Timer)sender).Stop();
            }
        }
        
        /// <summary>
        /// 打開窗體漸現效果
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void tStart_Tick(object sender, EventArgs e)
        {
            // 每一次執行透明度增加10%
            this.Opacity += 0.1;
            if (this.Opacity == 1)
            {
                ((Timer)sender).Stop();
                this.Focus();
            }
        }

  漸現效果用在EyesBaby上也是所謂小試牛刀吧。

  總結

  現在EyesBaby功能實現部分寫到這,就到此告一小節了。前面寫了一部分,其實技術含量並沒有多少。本人技術水平一斑,寫出來東西大部分還只能是一種自我記錄的方式,並不能起到言傳身授的境界,望各位海量!需要學習的地方很多,也有博友提了不少好的建議。比如自動更新部分。在此拜謝了!

  將來希望能多開發些對我們工作/生活有幫助的個人軟件(本人信仰“技術改變生活”),還希望大家多多提供建議和技術幫助!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved