托盘,最小化,关闭,鼠标拖住移动

1.       修改Form1StartPostion:CenterScreen

2.       FormBorderStyle None是上边框消失

3.       复制装有图片皮肤的文件夹Skinbin/Debug,复制到这的原因,Skin要与vstart.exe同一目录

4.       进行加载Skin图片,

5.       Form1导入图片,修改大小

6.       加入一个Button按钮,并给按钮导入图片,设置属性:AutoSize:True,AutoSizeMode:GrowAndShrink

7.       拖入一个PictureBox再导入图片

8.       思路:当鼠标移到两个picutreBox上时,图片的背景会发生改变

9.       设置picture的距离,要一步步的调试才能得到准确位置,以下代码在构造函数中

this.pictureBox1.Top = 3;

            this.pictureBox1.Left = 144;

            this.pictureBox2.Top = 3;

            this.pictureBox2.Left = 166;

10.   当鼠标移到picture 时发生的事伯MouseMove:picture 背景色改变

方法:this.pictureBox1.Image加入一个图片,想法:在前面已经加入两图片,可以看看他们是如何进行加的,Ctrl+f  进行搜索,在范围里搜索整个项目,要搜索的内容是::pituerBox1 可以搜索到到            this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));这句代码可以想象到=后面是一个image类型,

就用image为关键字,msnd里进行搜索,可以搜索到image,在类里能够找到方法与属于,由是由类名直接调用所以这个方法应该是static类型的,找到了就是它:

FromFile

已重载。 从指定的文件创建 Image

方法如下:    this.pictureBox1.Image = Image.FromFile("Skin//Royale//Min_Move.bmp");或者 this.pictureBox1.Image = Image.FromFile("Skin/Royale/Min_Move.bmp");

              这样可以去掉/

11.          MouseLeave:            this.pictureBox1.Image = Image.FromFile("Skin//Royale//Min_Normal.bmp");

         MouseDown:            this.pictureBox1.Image = Image.FromFile(@"Skin/Royale/Close_Down.bmp");

11.给最小化按钮加入一个NotifyIcon(通知图标)并选择一个图标,并添加Click事件,

这个事件应该是从托盘变成面板

private void notifyIcon1_Click(object sender, EventArgs e)

        {

            this.Visible = true;

            this.notifyIcon1.Visible = false;

        }

12.picuterBox添加Click事件:从面板到托盘

private void pictureBox1_Click(object sender, EventArgs e)

        {

            this.Visible = false;

            this.notifyIcon1.Visible  = true;

        }

13.下面的功能是鼠标拖住它,可以实现来回移动

思路:面板在中间,用鼠标拖住它可以移动,移动之前要知道面板的横竖坐标,移动之后有个新坐标,他们之间有个距离,让面板再根据距离进行相应的调整

  private void Form1_MouseDown(object sender, MouseEventArgs e)

        {

            if (e.Button == MouseButtons.Left)//判断是否是鼠标的左键

            {

                this.mousepoint.X = e.X;//得到原始坐标

                this.mousepoint.Y = e.Y;

            }

        }

 

        private void Form1_MouseMove(object sender, MouseEventArgs e)

        {

         

            if (e.Button == MouseButtons.Left)//判断是否是鼠标的左键

            {

                this.Top = MousePosition.Y - mousepoint.Y;//先前的坐减去原始的坐标

                this.Left = MousePosition.X - mousepoint.X;

            }

        }

 

 

 

 

你可能感兴趣的:(托盘,最小化,关闭,鼠标拖住移动)