퇴근5분전

<< FadeIn 효과를 적용한 폼 실행파일 >>


폼을 Show하면 생뚱맞게 툭 튀어나는걸
부드럽게 살짝 뒤에서 앞으로 나오는듯이? 투명에서 불투명수치를 조정하면서 튀어나오는 효과를
만들어보았다.

Form에 Shown 이벤트에 걸어주면 됨.
     protected override void OnShown(EventArgs e)
        {
            base.OnShown(e);
            FormEffect(this);
        }


// 이 메서드를 이용하게 된다.
 private void FormEffect(Form fm)
        {
            double[] opacity = new double[] { 0.1d, 0.3d, 0.7d, 0.8d, 0.9d, 1.0d};
            int cnt = 0;
            System.Windows.Forms.Timer tm = new System.Windows.Forms.Timer();
            {
                fm.RightToLeftLayout = false;
                fm.Opacity = 0d;                
             tm.Interval = 70;   // 나타나는 속도를 조정함.          
                tm.Tick += delegate(object obj, EventArgs e)
                {                   
                    if (( cnt +1 > opacity.Length) || fm == null)
                    {
                        tm.Stop();
                        tm.Dispose();
                        tm = null;
                        return;
                    }
                    else
                    {
                        fm.Opacity = opacity[cnt++];
                    }
                };                                  
                 tm.Start();               
            }         
        }

ps: 음 플젝에 적용해봤는데 MDI 부모창은 적용이 되는데 Mdi 자식창은 적용이 안되는것이...
쬐끔 아쉬웠던...

'# 2) .Net ( Vs 2005 ) > WinForm' 카테고리의 다른 글

가상메서드 - 오버라이드...  (0) 2009.10.06
그리드뷰 각 Row색 바꾸기.  (1) 2009.09.25
XmlHelper 를 만들다.  (0) 2009.09.23
TextBox 페인트 이벤트 걸기.  (2) 2009.08.24
ControlPaint 객체..  (0) 2009.08.20