WinForm中捕捉Flash按钮、菜单等动作事件

由于我的那个《求flash控件的属性及事件方法在C#中》帖子由于我自己的回复超过3次,无法浮出水面了。  
  今天经过细心的观察网络的例子,明白了一些flash和C#的交互。把经验分享。  
  例子:  
  private   void   axShockwaveFlash1_FSCommand(object   sender,   AxShockwaveFlashObjects._IShockwaveFlashEvents_FSCommandEvent   e)  
  {  
  if(e.command   ==   "Send   Action")    
  {  
  MessageBox.Show("调用FLASH按钮事件成功   "+e.args)   ;  
  }  
  if(e.command   ==   "Send   Action1")    
  {  
  MessageBox.Show("调用FLASH自定义按钮事件成功   "+e.args)   ;  
  }  
   
  }  
  private   void   button1_Click(object   sender,   System.EventArgs   e)  
  {  
  string   flashData   =   "一二三四五六七";  
  axShockwaveFlash1.SetVariable("txt",flashData);  
  }  
   
  private   void   Form1_Load(object   sender,   System.EventArgs   e)  
  {  
  axShockwaveFlash1.Movie=Application.StartupPath+"//flash//menu.swf";  
  }  
   
  private   void   button2_Click(object   sender,   System.EventArgs   e)  
  {  
  string   flashData1   =   "洒洒扫阿萨萨阿司";  
  axShockwaveFlash1.SetVariable("abc",flashData1);  
   
  }  
  flash代码:  
  var   mo:Object=new   Object();  
  mo.watch("txt");  
  mo.watch("abc");  
  bte.onRelease   =   function()   {  
  fscommand("Send   Action1",   "www.an86.net");  
  };  
  btn.onRelease   =   function()   {  
  fscommand("Send   Action",   "www.an86.net");  
  };  
  其实一看就能明白,C#和flash传递信息是通过变量来传递的,在flash中,我们把文本框,和按钮的变量设置好,这里按钮是btn,bte,文本框txt,abc,在  
  string   flashData1   =   "洒洒扫阿萨萨阿司";  
  axShockwaveFlash1.SetVariable("abc",flashData1);  
  C#把变量利用变量abc传递过去,在mo.watch("abc");接受了该变量。  
   
  private   void   axShockwaveFlash1_FSCommand(object   sender,   AxShockwaveFlashObjects._IShockwaveFlashEvents_FSCommandEvent   e)  
  C#利用上面的代码捕捉了flash的按钮事件,e.args捕捉了   "www.an86.net"信息,我ishi我们在C#中只需要判断flash的变量,来让C#来做事情,我们在作漂亮的按钮和界面可以解决了,但是我还没有解决如果我把1、2、3、4、5、6、7、8、9在不同的时间传入flash通过flash作不同的动画,例如速度,高度等。。

转自:http://topic.csdn.net/t/20061217/17/5236766.html

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
您可以使用 WinForms 的 ContextMenuStrip 控件来实现单击按钮弹出菜单的功能。以下是一个简单的示例代码: 首先,在您的窗体上添加一个按钮和一个 ContextMenuStrip 控件。然后,将 ContextMenuStrip 控件与按钮关联,以便在单击按钮时弹出菜单。 ```csharp // 创建一个 ContextMenuStrip 控件 ContextMenuStrip menuStrip = new ContextMenuStrip(); // 添加菜单项 menuStrip.Items.Add("菜单项1"); menuStrip.Items.Add("菜单项2"); menuStrip.Items.Add("菜单项3"); // 将 ContextMenuStrip 控件与按钮关联 button1.ContextMenuStrip = menuStrip; ``` 现在,当您单击按钮时,将会显示一个包含菜单项的下拉菜单。您可以通过处理菜单项的 Click 事件来执行相应的操作。 ```csharp // 处理菜单项的 Click 事件 private void MenuItem_Click(object sender, EventArgs e) { // 获取点击的菜单项 ToolStripMenuItem menuItem = (ToolStripMenuItem)sender; // 根据菜单项执行相应的操作 if (menuItem.Text == "菜单项1") { // 执行菜单项1的操作 } else if (menuItem.Text == "菜单项2") { // 执行菜单项2的操作 } else if (menuItem.Text == "菜单项3") { // 执行菜单项3的操作 } } ``` 您可以将以上代码添加到窗体的构造函数或 Load 事件处理程序,以便在窗体加载时设置按钮菜单。记得为菜单项的 Click 事件添加 MenuItem_Click 处理程序。 这样,当您单击按钮时,将会弹出一个菜单,您可以根据需要执行相应的操作。希望对您有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值