请问怎么用C# WinForm开发类似微软的按钮控件,鼠标移到上面突出效果,并显示颜色,离开恢复正常。
2012-02-03
展开全部
最简单的办法,修改Program.cs代码如下:
using System;
using System.Windows.Forms;
namespace RR
{
static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form f = new Form();
Button btn = new Button();
btn.MouseMove += (e, v) => { btn.BackColor = System.Drawing.Color.Green; };
btn.MouseLeave += (e, v) => { btn.BackColor = System.Drawing.Color.White; };
f.Controls.Add(btn);
Application.Run(f);
}
}
}
如果想多次使用,则是一下步骤
首先建议类文件,代码如下:
using System.Windows.Forms;
namespace RR
{
public class MyButton:Button
{
public MyButton()
{
MouseMove += (e, v) => { BackColor = System.Drawing.Color.Green; };
MouseLeave += (e, v) => { BackColor = System.Drawing.Color.White; };
}
}
}
再新建一个窗体,编译一次以后,再工具箱里找到这个叫MyButton的控件拖到窗体上,或者直接在Program.cs里将代码修改如下:
using System;
using System.Windows.Forms;
namespace RR
{
static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form f = new Form();
f.Controls.Add(new MyButton());
Application.Run(f);
}
}
}
run一下,就能看到效果!
using System;
using System.Windows.Forms;
namespace RR
{
static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form f = new Form();
Button btn = new Button();
btn.MouseMove += (e, v) => { btn.BackColor = System.Drawing.Color.Green; };
btn.MouseLeave += (e, v) => { btn.BackColor = System.Drawing.Color.White; };
f.Controls.Add(btn);
Application.Run(f);
}
}
}
如果想多次使用,则是一下步骤
首先建议类文件,代码如下:
using System.Windows.Forms;
namespace RR
{
public class MyButton:Button
{
public MyButton()
{
MouseMove += (e, v) => { BackColor = System.Drawing.Color.Green; };
MouseLeave += (e, v) => { BackColor = System.Drawing.Color.White; };
}
}
}
再新建一个窗体,编译一次以后,再工具箱里找到这个叫MyButton的控件拖到窗体上,或者直接在Program.cs里将代码修改如下:
using System;
using System.Windows.Forms;
namespace RR
{
static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form f = new Form();
f.Controls.Add(new MyButton());
Application.Run(f);
}
}
}
run一下,就能看到效果!
展开全部
private void button1_MouseMove(object sender, MouseEventArgs e)
{
this.button1.BackColor = System.Drawing.Color.Red;
}
private void button1_MouseLeave(object sender, EventArgs e)
{
this.button1.BackColor = this.BackColor;
}
突出效果可以尝试一下做一个背景图片试试。
{
this.button1.BackColor = System.Drawing.Color.Red;
}
private void button1_MouseLeave(object sender, EventArgs e)
{
this.button1.BackColor = this.BackColor;
}
突出效果可以尝试一下做一个背景图片试试。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按钮是有“鼠标进入”和“鼠标移出”事件的,VS有中文提示,可以找到这两个事件。
在第一个事件中将按钮设置成你想要的颜色样式,后一事件中改回原来的样式就OK
在第一个事件中将按钮设置成你想要的颜色样式,后一事件中改回原来的样式就OK
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.silverlight是个不错的选择
2.纯程序的话捕捉鼠标位置获取控件对象判断相同位置改变控件的背景或者边框样式 这些都是控件的属性在属性栏里可以看到的都能够调用出来并赋予值 但是某些属性值是只读的或者是枚举这个要注意
2.纯程序的话捕捉鼠标位置获取控件对象判断相同位置改变控件的背景或者边框样式 这些都是控件的属性在属性栏里可以看到的都能够调用出来并赋予值 但是某些属性值是只读的或者是枚举这个要注意
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上说的都挺好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询