如何编写ToolBar的ButtonClick事件

 1,在编写ToolBar的ButtonClick事件时,可能会产生疑问,因为在vs 2003中ToolBar上button的没有自己的click事件。下面是事件响应函数的框架

protected   void  toolBar1_ButtonClick ( Object sender, ToolBarButtonClickEventArgs e)         
 {
   
//  e.Button获得了toolbar上的button
   
// 利用button在toolbar上的Index号来区分点击了哪个button
   
// 使用switch来给出不同的响应
    switch (toolBar1.Buttons.IndexOf(e.Button))
   {
      
case   0 :
         
//  Insert code 
          break
      
case   1 :
         
//  Insert code 
          break
      
case   2 :
         
//  Insert code    
          break
    }
}

2,把ToolBar上的button的响应和菜单相联系
首先,把ToolBar上的每一个button的Tag属性设置为相应的菜单名称,这里要注要的是如果你是通过设计视图里直接填写tag属性的值,系统自动生成的代码是:
 this.tbbExit.Tag   =   "mnuUserExit";
你需要手工改成:
 this.tbbExit.Tag   =   mnuUserExit;
其中mnuUserExit是一个菜单的名字,即是一个MenuItem对象
其次,ToolBar的ButtonClick事件可以写成下面的样子:

private   void  myToolBar_ButtonClick( object  sender,  System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
       ToolBarButton tbCurrent 
=  e.Button;
       MenuItem menuItem 
=  (MenuItem)(tbCurrent.Tag);  
       menuItem.PerformClick(); 
}
这样很好的完成了功能,同时节省了代码。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值