C#实现气泡屏保效果(用1个timer)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace _03气泡_续续集
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        Label lb = new Label();
        Timer time = new Timer();
        private void Form1_Load(object sender, EventArgs e)
        {
            this.WindowState = FormWindowState.Maximized;
            this.FormBorderStyle = FormBorderStyle.None;
            lb.Text = "一屉热乎乎的小笼包";
            lb.Font = new Font("楷体",30);
            lb.AutoSize = true;
            this.Controls.Add(lb);
            time.Interval = 1;
            time.Start();
            time.Tick += Time_Tick;
        }
        int x = 5;
        int y = 5;
        private void Time_Tick(object sender, EventArgs e)
        {
            lb.Left = lb.Left + x;
            lb.Top = lb.Top + y;
            if (x>0 && y>0)
            {
                if (lb.Top+lb.Height>=Screen.PrimaryScreen.WorkingArea.Height)
                {
                    x = 5;
                    y = -5;
                }
                if (lb.Left+lb.Width>=Screen.PrimaryScreen.Bounds.Width)
                {
                    x = -5;
                    y = 5;
                }
            }
            if (x>0 && y<0)
            {
                if (lb.Left+lb.Width>=Screen.PrimaryScreen.Bounds.Width)
                {
                    x = -5;
                    y = -5;
                }
                if (lb.Top<=0)
                {
                    x = 5;
                    y = 5;
                }
            }
            if (x<0 && y<0)
            {
                if (lb.Top<=0)
                {
                    x = -5;
                    y = 5;
                }
                if (lb.Left<=0)
                {
                    x = 5;
                    y = -5;
                }
            }
            if (x<0 && y>0)
            {
                if (lb.Left <= 0)
                {
                    x = 5;
                    y = 5;
                }
                if (lb.Top + lb.Height >= Screen.PrimaryScreen.WorkingArea.Height)
                {
                    x = -5;
                    y = -5;
                }
            }
        }
    }
}

猜你喜欢

转载自blog.csdn.net/qq_43551373/article/details/85633187