Exemplo n.º 1
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            elapsed += (double)timer1.Interval / 1000.0;
            if (!loads && elapsed >= DURATION)
            {
                if (elapsed >= (Granted ? DURATION : MAXDURATION))
                {
                    kill();
                    return;
                }
            }

            SendMessage(BG.Handle, WM_SETREDRAW, false, 0);
            SendMessage(FG.Handle, WM_SETREDRAW, false, 0);
            double percent = (elapsed / (Granted ? DURATION : MAXDURATION));

            if (!loads)
            {
                Opacity = Math.Min(1, 4 - (percent * 4));
                if (Opacity < 0.001)
                {
                    Visible = false;
                }
            }

            int Move = (int)(BackMargin * percent) % 218;

            BG.Location = new Point(0, Move);
            FG.Location = new Point(0, -Move);
            SendMessage(BG.Handle, WM_SETREDRAW, true, 0);
            SendMessage(FG.Handle, WM_SETREDRAW, true, 0);
            BG.Invalidate();
            FG.Invalidate();
        }