eventhandler - 如何在 C# 中将一个事件处理程序传递给另一个事件处理程序
问题描述
我有一个显示 4 个摄像头视图的软件。它工作正常。我想修改它。
现在的问题是我想从 4 个不同的相机视图中捕捉图片。该软件仅捕获 4 个摄像头视图,除非我在调用此选择单击事件期间单击其中一个视图,并且它将传递该特定摄像头事件处理程序并将该处理程序数据存储到数组中。一旦我得到相机面板处理程序,我可以单击相机图像捕获按钮来拍摄快照。
但我想将事件相机处理程序(它告诉我正在选择哪个屏幕进行屏幕截图)传递给捕获按钮事件。
那怎么可能呢?有没有人有想法。复制下面的两个事件处理程序代码。
此 API 从相机屏幕捕获快照private void realPanel_Click(object sender, EventArgs e)
private void CapturePicture_Click(object sender, EventArgs e)
{
if (m_curRealPanel.m_playhandle == IntPtr.Zero)
{
return;
}
String strTemp = string.Copy(LocalSetting.m_strPicSavePath);
DateTime oDate = DateTime.Now;
String strCurTime = oDate.ToString("yyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
LocalSetting.m_strPicSavePath += m_deviceInfoList[m_curRealPanel.m_deviceIndex].m_ip;
LocalSetting.m_strPicSavePath += "_";
LocalSetting.m_strPicSavePath += (m_curRealPanel.m_channelIndex + 1);
LocalSetting.m_strPicSavePath += "_";
LocalSetting.m_strPicSavePath += strCurTime;
byte[] picSavePath;
GetUTF8Buffer(LocalSetting.m_strPicSavePath, NETDEVSDK.NETDEV_LEN_260, out picSavePath);
int iRet = NETDEVSDK.NETDEV_CapturePicture(m_curRealPanel.m_playhandle, picSavePath, (int)NETDEV_PICTURE_FORMAT_E.NETDEV_PICTURE_JPG);
if (NETDEVSDK.FALSE == iRet)
{
showFailLogInfo(m_deviceInfoList[m_curSelectedTreeDeviceIndex].m_ip + " chl:" + (m_curSelectedTreeChannelIndex + 1), "CapturePicture", NETDEVSDK.NETDEV_GetLastError());
//return;
}
showSuccessLogInfo(m_deviceInfoList[m_curSelectedTreeDeviceIndex].m_ip + " chl:" + (m_curSelectedTreeChannelIndex + 1), "CapturePicture");
LocalSetting.m_strPicSavePath = strTemp;
}
private void realPanel_Click(object sender, EventArgs e)
{
m_curRealPanel = sender as PlayPanel;
setDeviceTreeSelectNode();
if (true == m_curRealPanel.m_recordStatus)
{
LocalRecodBtn.Text = "Stop";
}
else
{
LocalRecodBtn.Text = "Record";
}
}
解决方案
推荐阅读
- python-2.7 - 添加将字典附加到另一个 multiprocessing.managers.DictProxy 中的列表
- c# - VSIX ErrorListProvider 任务列表为空
- snowflake-cloud-data-platform - 有没有办法找出雪花查询正在访问的表?
- node.js - AWS Lambda 函数不会从 Cognito PostConfirmation 事件触发,但它在测试中有效
- c - 如何从连接的二进制文件中分割出一个二进制文件
- javascript - GET XMLHttpRequest 在就绪状态 4 和状态 0 处停止
- c++ - 使用-xipo -xO4构建时发生c ++崩溃
- julia - 从图灵模型绘制 Julia 中的可信区间
- python - 将值设置为变量的单行 lambda 函数
- powershell - 从命令行从几个大型压缩文件夹中解压缩文件