Winform 自定义图片菜单控件
来源:互联网 发布:查询行业数据 编辑:程序博客网 时间:2024/04/30 00:15
//菜单控件代码
public partial class AnalysisSelectButton : UserControl
{/// <summary>
/// 菜单当前选中状态
/// </summary>
private bool _selectedStatus = false;
private Image _btnImage = null;
/// <summary>
/// 获取与设置未选中时的按钮图片
/// </summary>
public Image BtnImage
{
get
{
return _btnImage;
}
set
{
_btnImage = value;
if (!_selectedStatus)
{
pictureBox1.Image = _btnImage;
}
}
}
private Image _selectedImage = null;
/// <summary>
/// 获取与设置选中时的图片
/// </summary>
public Image SelectedImage
{
get
{
return _selectedImage;
}
set
{
_selectedImage = value;
if (_selectedStatus)
{
pictureBox1.Image = _selectedImage;
}
}
}
public AnalysisSelectButton()
{
InitializeComponent();
}
public string 场景 { get; set; }
/// <summary>
/// 获取与设置按钮文字
/// </summary>
public String BtnText
{
get
{
return label1.Text;
}
set
{
label1.Text = value;
}
}
/// <summary>
/// 按钮点击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void BtnClick(object sender, EventArgs e)
{
if (LoadGraghCtlEvent!= null)
{
LoadGraghCtlEvent(BtnText,场景);
}
}
/// <summary>
/// 场景改变事件执行函数
/// </summary>
/// <param name="cj"></param>
public void SelectedChange(string cj)
{
if (cj == 场景)
{
_selectedStatus = true;
pictureBox1.Image = SelectedImage;
//点击之后就不设为不可点击
this.Enabled = false;
}
else
{
_selectedStatus = false;
pictureBox1.Image = BtnImage;
this.Enabled = true;
}
}
/// <summary>
/// 加载图表控件事件
/// </summary>
public event LoadGraghCtlEventHandler LoadGraghCtlEvent;
}
/// <summary>
/// 加载图表控件代理
/// </summary>
/// <param name="BtnText"></param>
public delegate void LoadGraghCtlEventHandler(string btntext,string cj);
//菜单控件按钮的使用
public void Init()
{
//上面的代码生成控件后,拖入到界面中来,进行属性设置
//就业信息监测菜单
JyxxjcMenu.BtnText = "就业信息监测";
JyxxjcMenu.BtnImage = new Bitmap(string.Format(@"{0}\Image\{1}", Application.StartupPath, "jy1.png")); //把图片放入debug中采用这种写法可以设置图片
JyxxjcMenu.SelectedImage = new Bitmap(string.Format(@"{0}\Image\{1}", Application.StartupPath, "jy2.png"));
JyxxjcMenu.场景 = "就业信息监测场景";
//默认点击就业信息监测
JyxxjcMenu.BtnClick(null, null);
//就业决策分析菜单
JyjcfxMenu.BtnText = "就业决策分析";
JyjcfxMenu.BtnImage = new Bitmap(string.Format(@"{0}\Image\{1}", Application.StartupPath, "jc1.png"));
JyjcfxMenu.SelectedImage = new Bitmap(string.Format(@"{0}\Image\{1}", Application.StartupPath, "jc2.png"));
JyjcfxMenu.场景 = "就业决策分析场景";
//订阅控制场景控件显示事件
JyxxjcMenu.LoadGraghCtlEvent += LoadGraghCtlEvent;
JyjcfxMenu.LoadGraghCtlEvent += LoadGraghCtlEvent;
}
/// <summary>
/// 控制场景控件显示和按钮改变自己效果处理
/// </summary>
/// <param name="btntext"></param>
private void LoadGraghCtlEvent(string btntext,string cj)
{
UserControl sim = null;
switch (btntext)
{
case "就业信息监测":
sim = new InfoCheckMng();
break;
case "就业决策分析":
sim = new DecisionAnalysisMng();
break;
}
if (sim != null)
{
//加载控件
sim.Dock = DockStyle.Fill;
panel2.Controls.Clear();
panel2.Controls.Add(sim);
//按钮改变自己显示效果
JyxxjcMenu.SelectedChange(cj);
JyjcfxMenu.SelectedChange(cj);
}
}
- Winform 自定义图片菜单控件
- WinForm自定义控件
- Winform之自定义控件
- 自定义winform分页控件
- WinForm自定义控件扩展
- Winform自定义控件实例
- 自定义winform分页控件
- Winform自定义控件实例
- winform制作自定义控件
- Winform自定义控件
- winform自定义控件
- WinForm自定义控件
- Winform自定义控件实例
- WinForm自定义控件
- winform自定义panel控件
- winform 创建自定义控件
- winform 自定义控件-按钮
- winform自定义控件
- 做科研的几点体会:如何多发 SCI
- (Java 功能代码) 正则式判断IP地址
- 【搬运】Android四大基本组件介绍与生命周期
- 链表求和问题(add two numbers)
- 字符串操作
- Winform 自定义图片菜单控件
- BAT批处理 文件重命名
- java设计模式(五)---适配器模式
- NYOJ 55 懒省事的小明(哈弗曼树)
- 统一建模语言(UML)的特点、视图模型
- IOS7设计指南
- BUFF 在C++ 中取其中一部分 并且写到固定的目录下
- 随机颜色生产
- quick cocos2d-x 实战:做一个手机横版格斗游戏4:游戏开始界面背景图代码