解决方案 »
- 图片上传按钮提交。提交页面怎么获取该图片?
- 最后一点分,请教一个比较难的问题
- “尝试读取或写入受保护的内存。这通常指示其他内存已损坏”问题,请大家帮忙看下
- 一个关于C# XML注释小节的疑问,希望高手能帮忙解答
- 请教各位大哥: 有一个项目相当复杂, 我想先把类视图打印出来, 以便了解他的架构. 但是VS如何打印类视图呢?
- (求助啊)搞不明白。。
- C#服务程序内存控制问题
- 100分求如何操作远程http服务器上mdb数据库?
- 我正用C#编写一个多页面的IE浏览器,谁知道怎么实现打开HTML文件的功能?
- 有关.net组件与Com+组件的区别的问题
- C#post跨域登陆
- System.NullReferenceException(winform异常信息)
private static extern int mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo);
const int MOUSEEVENTF_MOVE = 0x0001;
const int MOUSEEVENTF_LEFTDOWN = 0x0002;
const int MOUSEEVENTF_LEFTUP = 0x0004;
const int MOUSEEVENTF_RIGHTDOWN = 0x0008;
const int MOUSEEVENTF_RIGHTUP = 0x0010;
const int MOUSEEVENTF_MIDDLEDOWN = 0x0020;
const int MOUSEEVENTF_MIDDLEUP = 0x0040;
const int MOUSEEVENTF_ABSOLUTE = 0x8000; mouse_event(MOUSEEVENTF_MOVE, 200, 0, 0, 0); mouse_event(MOUSEEVENTF_LEFTDOWN, 1, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 1, 0, 0, 0);
鼠标点击是要按下再放开的,
mouse_event(MOUSEEVENTF_LEFTDOWN, 1, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 1, 0, 0, 0);
这2个方法你都得执行.不能按下就不管了.
private void btn_startrecord_Click(object sender, EventArgs e)
{
if (btn_play.Text == "播 放")
{
MessageBox.Show("请先播放", "温馨提醒", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
btn_stoprecord.Enabled = true;
btn_startrecord.Enabled = false; //得到路径
string myPath = string.Format("{0}\\{1}.avi", Application.StartupPath, DateTime.Now.ToString(@"yyyy_MM_dd HHmmss"));
wcam.kinescopePath = myPath;
//======================================================
delegateKinescope myK = new delegateKinescope(wcam.Kinescope);//委托
Thread threadKinescope = new Thread(new ThreadStart(myK));//线程
//threadKinescope.IsBackground = true;//后台运行
//threadKinescope.SetApartmentState(ApartmentState.STA);//单线程
//threadKinescope.SetApartmentState(ApartmentState.MTA);//多线程
threadKinescope.Start();//开始运行 //======================================================
//Application.DoEvents(); //======================================================
mouse_event(MOUSEEVENTF_RIGHTDOWN, 1, 0, 0, 0);
mouse_event(MOUSEEVENTF_RIGHTUP, 1, 0, 0, 0);
Thread.Sleep(200); //======================================================
//this.Cursor = Cursors.Default;
//Thread.Sleep(200);
//用Keys.SendWait方法即可实现单击鼠标左键
//System.Windows.Forms.SendKeys.SendWait("{ESC}");
//System.Windows.Forms.SendKeys.Send("{ESC}"); //System.Windows.Forms.SendKeys.Send("{Right}");
//System.Windows.Forms.SendKeys.Flush();
//======================================================
}
可以在我的桌面上弹出右键菜单
代码没有问题
你在btn_startrecord_Click事件里执行右键单击,你按钮上有右键事件么,如果没有,单击右键当然是没反应.