最近看了不少C#学习的视频,有专业知识的,不过老师也有做了一些美化,我觉得还是不错的,然后结合自己以前学习到的一些关于C#界面美化写一篇文章把,小编尽量编写仔细,让大家可以直接拿去使用
1,界面主题渐变效果
运行前 | 运行后 |
将下方代码添加至项目中即可:
using System.Drawing;
using System.Drawing.Drawing2D;
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
Graphics g = e.Graphics;
Rectangle rec = new Rectangle(0,0,this.Width,this.Height);
//LinearGradientMode.BackwardDiagonal表示从右上向左下渐变
LinearGradientBrush brush = new LinearGradientBrush(rec,Color.FromArgb(225,101,127),Color.FromArgb(93,127,122),LinearGradientMode.BackwardDiagonal);
g.FillRectangle(brush, rec);
}
2,窗体淡出效果
3,窗体拖拉效果
窗体FormVorderStyle设置为None后不可以进行拖拉
1》,先添加一个Panel控件至需要进行拖拉的位置,一般放在顶部
2》,然后在项目中添加如下代码
private Point mPoint;
private void pl_2_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Location = new Point(Location.X + e.X - mPoint.X, Location.Y + e.Y - mPoint.Y);
}
}
private void pl_2_MouseDown(object sender, MouseEventArgs e)
{
mPoint = new Point(e.X, e.Y);
}
3》,在Panel控件的事件中绑定这两个方法就好了
4,界面初始化加载功
(总所周知CSDN是不能发视频的,所以我转换了一下GIF图片格式)我为了让你们看到效果已经尽力了,水印要开VIP才可以去,代码加载效果就是如上这般效果:
下面我们看如何实现:
1》,我们拖动了两个Panel控件,一个设置为透明Pl_1,另外一个做为加载使用Pl_2
2》,定义一个时间控件,速度自己看这设置就好 了
3》,时间控件的事件中,添加如下代码。。//大致意思为每过一段时间将Pl_2的width宽进行5px的添加
这样就形成一个进度条的效果了
private void timer1_Tick(object sender, EventArgs e)
{
pl_2.Width += 5;
if (pl_2.Width >= 700)
{
this.DialogResult = DialogResult.OK;
}
}