1. 修改Form1的StartPostion:CenterScreen
2. FormBorderStyle None是上边框消失
3. 复制装有图片皮肤的文件夹Skin到bin/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; } } |