右键点击文件夹无响应拍照控件设置

如何设置按钮控件点击弹出新菜单栏 (新手,要详细步骤)_百度知道
如何设置按钮控件点击弹出新菜单栏 (新手,要详细步骤)
我有更好的答案
如果是另外工作薄说明太简单,随时不能提供宏代码。如果是其他工作表,方法如下:
在菜单栏空白处右键单击,在右键菜单中选择“控件工具箱”,在弹出的“控件工具箱”对话框中选择“命令按钮”控件,然后在工作表设置好“命令按钮”控件关闭对话框,双击控件,在出现的代码编辑区复制粘贴以下代码:
Private Sub CommandButton1_Click()
Dim Inet As String
Inet = InputBox(&请输入要粘贴的行号:&)
If Len(Trim(Inet)) & 0 Then
If Application.CountA(Sheet2.Range(&b& & Inet & &:d& & Inet + 1)) & 0 Then
If MsgBox(&你选择的单元格粘贴区域有数值。是否继续?&, 4 + 32, &提示&) = vbYes Then
Range(&a1:c2&).Copy Sheet2.Range(&b& & Inet)
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁QT主窗体右键弹出下拉菜单方法(我的主窗体的类名是CGuiMainwindow):
void CGuiMainwindow::contextMenuEvent(QContextMenuEvent* e)
QMenu *menu = new QMenu();
menu-&addSeparator();
menu-&addSeparator();
menu-&addAction(Act_Maxsize);
menu-&addSeparator();
menu-&addSeparator();
menu-&addAction(Act_Normal);
menu-&addSeparator();
menu-&addSeparator();
menu-&exec(e-&globalPos());
其中Act_Maxsize和Act_Normal是两个QAction 对象指针。我的定义和初始化如下:
Act_Maxsize
= new QAction(tr(&XML&), this);
Act_Maxsize-&setIcon(QIcon(&Resources/logo.png&));
Act_Normal
= new QAction(tr(&SHOW&), this);
Act_Normal-&setIcon(QIcon(&Resources/logo.png&));
connect(Act_Maxsize, SIGNAL(triggered()), this, SLOT(ADDChange()));
connect(Act_Normal, SIGNAL(triggered()), this, SLOT(XMLChange()));
油槽函数是用来响应右键菜单的点击动作。
QT内置控件添加右键菜单方法(以QTreeWidget添加右键菜单为例):
connect(moduleTree,SIGNAL(itemPressed(QTreeWidgetItem *, int)),this,SLOT(SlotItemClicked(
QTreeWidgetItem *, int)));
实现槽函数
void CGuiMainwindow::SlotItemClicked(QTreeWidgetItem *item, int column)
if (qApp-&mouseButtons() == Qt::LeftButton)
if (qApp-&mouseButtons() == Qt::RightButton)
{ if (item-&childCount() & 0) { }
ShowMenu();
实现菜单显示功能函数:
void CGuiMainwindow::ShowMenu()
QMenu menu(moduleTree);
QIcon myIcon(&Resources/logo.png&);
menu.addAction(myIcon,tr(&菜单_1&));
menu.addAction(myIcon,tr(&菜单_2&));
menu.addAction(myIcon,tr(&菜单_3&));
menu.addAction(myIcon,tr(&菜单_4&));
menu.addAction(myIcon,tr(&菜单_5&));
menu.addAction(myIcon,tr(&菜单_6&));
menu.exec(QCursor::pos());
[喝小酒的网摘]/a/10275.htm
原文:[喝小酒的网摘]/a/10275.htm
IP:114.32.33.108:QT+右鍵選單IP:202.118.83.51:qt 控件相对定位IP:114.32.33.23:qt %u53F3%u%u55AEIP:123.117.22.199:qt 右键IP:58.240.164.83:qt
实现菜单IP:112.95.168.97:定制QT右键菜单IP:219.143.13.21:QT各个控件代表的功能帮助企业打造成功软件!
热门搜索:
DevExpress使用教程:XtraGridControl动态添加右键菜单
DevExpress使用教程:XtraGridControl动态添加右键菜单
| 作者: |
15:00:57| 阅读 0次
概述:本文介绍如何在DevExpress XtraGridControl 中动态添加右键菜单。
在使用 GridControl 的时候经常需要添加右键菜单。一般的做法是自己创建菜单项,然后注册GridView的Mouse-Click事件,然后Show出定义好的菜单。但是涉及到一些单击事件会收到编辑器编辑状态影响,所以Mouse-Click事件不好用。
幸好,GridView自带了一个默认的右键事件,专门用于弹出右键菜单用:PopupMenuShowing
为了调用方便,设计成一个静态方法,调用的时候只用传入需要注册的网格就好:
GridViewMenuHelper.CreateCopyCellItem(gdvw);
这里,为传入网格添加一个名为【复制XXX】(XXX为列头)的方法,可以将鼠标点中的Cell中的数据复制到剪贴板。
效果图如下:
实现代码如下:
#region 添加复制Cell菜单
public static void CreateCopyCellItem(GridView View)
View.PopupMenuShowing += new PopupMenuShowingEventHandler(Create_CopyCellItem);
static void Create_CopyCellItem(object sender, PopupMenuShowingEventArgs e)
if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Row)
if (e.HitInfo.InRowCell)
e.Menu.Items.Add(CreateCopyMenuItem((GridView)sender, e.HitInfo.RowHandle, e.HitInfo.Column));
static DXMenuItem CreateCopyMenuItem(GridView view, int rowHandle, GridColumn column)
DXMenuItem copyitem = new DXMenuItem(&复制& + column.Caption,
new EventHandler(OnCopyCellClick), null);
copyitem.Tag =
static void OnCopyCellClick(object sender, EventArgs e)
GridColumn col = (GridColumn)((DXMenuItem)sender).T
string filed = col.FieldN
Clipboard.SetDataObject(col.View.GetRowCellDisplayText(col.View.FocusedRowHandle, col), true);
#endregion
public class GridViewAddPopupMenuBase
EventHandler OnClearCellC
string MenuN
public static void CreateNewCellItem(GridView View, string cMenuName, EventHandler DoClearCellClick)
GridViewAddPopupMenuBase gb = new GridViewAddPopupMenuBase();
gb.OnClearCellClick = DoClearCellC
gb.MenuName = cMenuN
View.PopupMenuShowing += new PopupMenuShowingEventHandler(gb.Create_NewCellItem);
void Create_NewCellItem(object sender, PopupMenuShowingEventArgs e)
if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Row)
if (((GridView)sender).OptionsBehavior.Editable == true)
if (e.HitInfo.InRowCell && e.HitInfo.Column.OptionsColumn.AllowEdit == true)
e.Menu.Items.Add(CreateNewMenuItem((GridView)sender, e.HitInfo.RowHandle, e.HitInfo.Column));
DXMenuItem CreateNewMenuItem(GridView view, int rowHandle, GridColumn column)
DXMenuItem copyitem = new DXMenuItem(MenuName.Replace(&[Caption]&, column.Caption.Replace(&\r\n&,&&)),
new EventHandler(OnClearCellClick), null);
copyitem.Tag =
public class GridViewCreateNewCellItem : GridViewAddPopupMenuBase
#region 添加复制Cell菜单
public static void CreateClearCellItem(GridView View)
CreateNewCellItem(View, &清除[Caption]&, DoClear);
private static void DoClear(object sender, EventArgs e)
GridColumn col = (GridColumn)((DXMenuItem)sender).T
col.View.SetRowCellValue(col.View.FocusedRowHandle, col, DBNull.Value);
#endregion
使用:Load事件增加
GridViewCreateNewCellItem.CreateClearCellItem(gv_Wool);
GridViewCreateNewCellItem.CreateClearCellItem(gv_Ast);
GridViewCreateNewCellItem.CreateClearCellItem(gv_ZJ);
GridViewCreateNewCellItem.CreateClearCellItem(gv_Process2);
GridViewCreateNewCellItem.CreateClearCellItem(gv_SpecialProcess);
Demo下载:/s/1bnCijtP
Via GarsonZhang
慧都控件|提供软件技术整体解决方案
扫码关注微信
云集全球三千余款优秀控件、软件产品,提供行业领先的咨询、培训与开发服务
微信ID:EVGET_Huidu
企业QQ:|电话:023-
400-700-1020
<input type="hidden" id="url" value=""/>ImageCapOnWeb控件使用说明 - 昊仔 - 博客园
目&&&&& 录
(一)&&&& 控件总体功能说明.. 2
(二)&&&& 控件集成使用说明.. 2
(三)&&&& 控件方法说明.. 4
3.1 启动视频捕捉.. 4
3.2 抓拍摄像头视频画面.. 4
3.3 读取抓拍的画面结果数据.. 4
3.3.1& 按照jpg格式读取结果数据.. 4
3.3.2 按照bmp格式读取结果数据.. 4
(四) 控件属性及方法表格.. 5
(五)、常见问题.. 7
5.1 控件如何升级到新版本?.. 7
5.2 如何验证控件是否注册成功成为正式版本?.. 7
5.3 高清摄像头拍照结果上传失败的情况如何解决?.. 8
5.4 浏览器假死情况如何解决?.. 8
(一) 控件总体功能说明
摄像头视频采集控件用于在Web编程中辅助您完成摄像头图像采集功能,控件基于微软DirectX技术,支持几乎所有的USB外置摄像头及内置摄像头,通过在Web项目中引用该控件,可以简化您的摄像头图像采集过程,加快您的项目开发进度。
&&&&& 摄像头图像采集控件(以下简称控件)工作在客户端浏览器中,支持多种服务器端编程技术及部署环境,支持asp、jsp、php、asp.net等常见的服务器端编程技术,图像采集结果支持按照多种图像数据保存及导出使用。
&&&&& 控件内置图像裁剪编辑功能,便于您选取有意义的图像处理使用,控件支持图像旋转、客户端本地保存等功能。
(二) 控件集成使用说明
控件以cab压缩包格式发行,在项目中集成控件时需要复制ImageCapOnWeb.cab文件到项目中,然后在需要进行图像采集的页面中使用&object&&/object&的方式引入该控件。完整的引用控件的示例如下:
&object classid="clsid:3E6--F3D8"
&&&&& id="cap1" codebase="./cabs/ImageCapOnWeb.cab#version=2,0,0,0" width="100%" height="500"&
&&&&& &param name="Visible" value="0"&
&&&&& &param name="AutoScroll" value="0"&
&&&&& &param name="AutoSize" value="0"&
&&&&& &param name="AxBorderStyle" value="1"&
&&&&& &param name="Caption" value="WebVideoCap"&
&&&&& &param name="Color" value=""&
&&&&& &param name="Font" value="宋体"&
&&&&& &param name="KeyPreview" value="0"&
&&&&& &param name="PixelsPerInch" value="96"&
&&&&& &param name="PrintScale" value="1"&
&&&&& &param name="Scaled" value="-1"&
&&&&& &param name="DropTarget" value="0"&
&&&&& &param name="HelpFile" value&
&&&&& &param name="PopupMode" value="0"&
&&&&& &param name="ScreenSnap" value="0"&
&&&&& &param name="SnapBuffer" value="10"&
&&&&& &param name="DockSite" value="0"&
&&&&& &param name="DoubleBuffered" value="0"&
&&&&& &param name="ParentDoubleBuffered" value="0"&
&&&&& &param name="UseDockManager" value="0"&
&&&&& &param name="Enabled" value="-1"&
&&&&& &param name="AlignWithMargins" value="0"&
&&&&& &param name="ParentCustomHint" value="-1"&
&&&&& &param name="key1" value=""&
&&&&& &param name="key2" value=""&
&&&&& 上面的示例演示了如何在项目的页面中引用控件,注意红色标示的部分用于确定控件cab压缩包所在路径,要结合项目中的目录划分自行制定到控件压缩包的路径。
&&&&& 除了要在html页面中引入控件以外,客户端浏览器在访问控件所在页面时,需要提前调整浏览器设定,需要启用 ActiveX技术,因为控件未进行数字签名,因此需要启用浏览器的&未签名 ActiveX下载提示&功能。
&&&&& 如果需要上传控件的拍照结果,还需要额外编程读取拍照以后控件的数据值属性,取到经过base64格式编码的数据以后提交到服务器端解码并保存。
(三) 控件方法说明
3.1 启动视频捕捉
控件名称.start();
&&&&& start()方法用于启动摄像头进行视频画面呈现,注意摄像头为独占性应用,即在同一时刻最多只有一个程序可以取得摄像头数据,因此在调试程序请先确保无其它程序或软件在读取摄像头数据。
3.2 抓拍摄像头视频画面
&& 控件名称.cap();
&&&&& Cap方法用于抓拍当前摄像头图像数据,抓拍结果保存到结果编辑窗口中。
3.3 读取抓拍的画面结果数据
3.3.1& 按照jpg格式读取结果数据
&&&&& 控件名称. jpegBase64Data
&&&&& 通过读取控件的jpegBase64Data属性,可以取得抓拍结果图像的jpg格式结果数据经过base64编码格式转换的字符串数据,为了便于在web编程中传输数据内容,得到的图像数据是按照base64格式编码的字符串数据,使用前注意需要进行解码处理。
3.3.2 按照bmp格式读取结果数据
控件名称. bmpBase64Data
通过读取控件的bmpBase64Data属性,可以取得拍照结果的bmp格式数据经过base64编码处理后的字符串数据。可以用来上传到服务器端等情景下使用,但是注意bmp格式压缩比较jpg格式差很多,所以在需要上传的情况下应该尽量使用jpg格式的数据。
(四) 控件属性及方法表格
开始取得摄像头画面数据并显示在控件中。
拍照并停止摄像头动态画面捕捉
停止动态画面捕捉,当调用cap()方法以后会自动调用stop()方法。
清除拍照结果。
startWith(int index)
当计算机连接了多个摄像头时可以使用这个方法来启动指定的摄像头。例如启动第二个摄像头为控件名称.startWith(1);//注意第一个摄像头从0开始编号
resizePicture(width,height)
调整输出图像尺寸,例如需要调整输出图像尺寸为像素时可以使用
控件名称.resizePicture();
AboutBox()
显示控件关于对话框,可以查看控件当前工作状态,例如查看是否工作在正式授权模式下。
savetoFile(filename)
保存拍照结果到客户端计算机本地硬盘中,例如 控件名称.saveToFile(&d://test.jpg&);
switchWatchOnly()
切换到隐藏编辑按钮的方式,只显示视频窗口。
switchFullMode()
切换到控件缺省默认显示方式,显示控制按钮及编辑按钮等。
drawText2Footer(text)
在图片上绘制一段文字信息,注意绘制位置是固定的。
drawTextInfo(x,y,fontsize,
r,g,b,msg)
在图片上绘制一段文字信息,参数x,y用于确定在那个位置开始绘制文字信息,坐标位置为从空间左上角为0,0坐标开始计算。Fontsize为字体大小,例如指定使用12号字体时传递参数值为12即可。r,g,b为绘制文字的红、绿、蓝三原色值,例如要绘制的文字为红色时可以指定r,g,b值为255,0,0即可。msg为要绘制的文字信息内容。
getCamName(int idx)
读取某一个摄像头设备的名称,通过读取控件的camCount属性可以取得客户端本机一共连接了多少个摄像头,然后可以遍历读取所有的摄像头设备名称。
getFormatName (int idx)
读取当前选中的摄像头支持的视频格式名称,可以通过先读取控件的formatCount属性取得当前摄像头支持的格式总数,然后遍历读取所有的视频规格名称。
setCurrentCam(int idx)
设置控件当前使用哪一个摄像头,第一个摄像头从0开始编号。
setCurrentFormat (int idx)
设置控件工作在某一中视频规格下,例如先通过读取formatCount取得支持的视频规格总数,然后通过getFormatName取得每一个规格的名称,然后再设置当前选中的视频规格。
Key1,key2,licenseMode
用于向控件提供授权码,key1和key2分别对应作者提供的key值,licenseMode值为授权工作模式。授权码需要联系控件作者付费后取得,作者邮件
jpegBase64Data
用于取得jpeg格式的图像base64编码数据,jpeg格式数据量比bmp小巧很多,建议读取控件的此属相取得图像数据使用。
bmpBase64Data
用于取得bmp格式的图像base64编码数据,bmp格式数据量大,不建议使用。
用于取得客户端本机连接了多少个摄像头设备。
formatCount
用于取得客户端当前选中摄像头支持的视频格式总数。
(五)、常见问题
5.1 控件如何升级到新版本?
&&&&& 控件被客户端IE浏览器加载以后会在c:\windows\system32\目录中生成一个ImageCapOnWeb.ocx文件,如果有新版本控件发布时,可以手动的删除system32目录中的ImageCapOnWeb.ocx文件以便浏览器再次重新下载新版本控件。
5.2 如何验证控件是否注册成功成为正式版本?
&&&&& 在联系控件作者购买授权码以后,配置控件的key1,key2,licenseMode这三个属性值,注意需要在每一个引用控件的页面中都要配置这三个属性,如果担心配置的参数值不正确而造成注册失败,可以调用控件的AboutBox()方法来验证控件工作模式。
&&&&& 示例:document.getElementById('cap1').AboutBox();
5.3 高清摄像头拍照结果上传失败的情况如何解决?
&&&&& 在个别web服务器上限制了客户端发送的http请求数据量大小,例如tomcat缺省限制客户端最大发送2M的http post数据(文件上传除外),我们取得的照片base64字符串数据在高清摄像头时有可能会很大,因此需要调整web服务器的参数来接受比较大的http post数据,不同的web服务器配置参数各不相同,请参考服务器手册调整参数。
5.4 浏览器假死情况如何解决?
&&&&& 个别的客户端计算机在使用控件后如果出现浏览器假死情况,从以下几个角度解决:
1.关闭应用程序保护(DEP),方法为:右键点击&我的电脑&-&&属性&-&&高级系统设置&-&&高级&-&&设置&-&&数据执行保护&,选择&仅为基本windows程序和服务启用DEP(T)&
&&&&& 2.清除一下浏览器中的恶意网址插件等垃圾插件。}

我要回帖

更多关于 jquery右键点击事件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信