VC 添加的右键菜单 获取文件名
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VC 添加的右键菜单 获取文件名相关的知识,希望对你有一定的参考价值。
我修改注册表实现的右键菜单,就是一个文件夹加密软件。点右键的文件夹加密,怎获取这个文件夹的路径呢!
在你修改的注册表对应的可执行程序后面加一个 %l 参数。你的程序使用GetCommandLine函数获得命令行参数。 参考技术A int argn;
LPWSTR s=GetCommandLineW();
LPWSTR *cmdLineAry=CommandLineToArgvW(s,&argn);
if(argn!=1)
MessageBox((CString)cmdLineAry[1]);//这就是文件名了。
本回答被提问者采纳
QTextBrowser 的右键单击上下文菜单
【中文标题】QTextBrowser 的右键单击上下文菜单【英文标题】:Right Click Context Menu for QTextBrowser 【发布时间】:2012-08-17 02:29:38 【问题描述】:我正在尝试为我的 Qt 应用程序中的 QTextBrowser 添加一个自定义 contextMenu,但它似乎不起作用。
我正在使用为 Element QLineEdit 定义的以下链接中解释的步骤,但是它不起作用。
extend-the-standard-context-menu-of-qtextedit
编辑:
我在MainWindow的构造函数中写了以下代码:
QDockWidget *dock = new QDockWidget(tr("Text View"), this);
txtBrwsr = new QTextBrowser(this);
dock->setWidget(txtBrwsr);
txtBrwsr->setContextMenuPolicy(Qt::CustomContextMenu);
connect(txtBrwsr,SIGNAL(customContextMenuRequested(const QPoint&)), this,SLOT(showContextMenu(const QPoint&)));
setCentralWidget(txtBrwsr);
以下是showContextMenu函数的实现:
void AMTMainWindow::showContextMenu(const QPoint &pt)
QMenu * menu = txtBrwsr->createStandardContextMenu();
QMenu * tags;
tags = menu->addMenu(tr("&Tag"));
for(int i=0; i<_atagger->tagTypeVector->count(); i++)
QAction * taginstance;
char * tagValue = (_atagger->tagTypeVector->at(i)).tag.toLocal8Bit().data();
taginstance = new QAction(tr(tagValue), this);
connect(taginstance, SIGNAL(triggered()), this, SLOT(tag(tagValue)));
tags->addAction(taginstance);
menu->addAction(untagAct);
menu->addAction(addtagAct);
menu->exec(txtBrwsr->mapToGlobal(pt));
delete menu;
经过一些调试,我发现当我按下右键应该打开上下文菜单时甚至没有触发 showContextMenu 功能。所以我认为主要问题在于连接功能。
感谢任何帮助。
【问题讨论】:
“不起作用”是指菜单未显示,操作被禁用,还是您自己的自定义选项未显示? 向我们展示你所写的——我们不是通灵者。 【参考方案1】:您在此处创建菜单后删除它:
[...]
menu->addAction(addtagAct);
menu->exec(txtBrwsr->mapToGlobal(pt));
delete menu;
【讨论】:
以上是关于VC 添加的右键菜单 获取文件名的主要内容,如果未能解决你的问题,请参考以下文章