webbrowser中如何关闭右键菜单(50分)

  • 主题发起人 主题发起人 zhcg
  • 开始时间 开始时间
Z

zhcg

Unregistered / Unconfirmed
GUEST, unregistred user!
form1上有一webbrowser1,设置好连接页面后,运行。在里面单击右键,有很多功能,本人
不想让人看到源代码,如何屏蔽右键菜单?不想改变注册表,只想在delphi里加一语句实现。
请各位高手多多帮助!!
 
我拷,很难的。50分??????????
为什么不让看源代码呢?
原码是所打开的网页的原码,有什么不妥吗?不知你指的原码是什么?
 
本身很难呀,也许delphi6可以(用clx版的东西,我想可以)。
delphi5:解决方案,直接在你的网页里加入:
<pre>

<body topmargin="2" leftmargin="2" oncontextmenu=return(false)>
<script src="nomodied.js"></script>

---- nomodied.js ----
function BindKeys(){
document.onkeypress = parseKeys;
document.onclick = parseLClick;
document.oncontextmenu = parseRClick;
document.body.oncopy = parseCopy;
document.body.onselect = parseSelect;
}
function parseKeys(){
}
function parseLClick(){

}
function parseRClick(){
window.event.returnValue = false;
}
function parseCopy(){
window.event.returnValue = false;
}
function parseSelect(){
window.event.returnValue = false;
}
BindKeys();


<pre>
你可以试一下,肯定看不道HTM源文件的,而且不能复制。
 
在form1上放一个PopupMenu1。不必添加菜单项。设置
webbrowser1.popupmenu:=popupmenu1;
就行了。
 
to:xiehaiyi

你是过么?我怎么不行,建议大家在给别人答案的时候自己先看看
 
如果这样都不行的话,你干脆到ie&delphi站点看看吧,最好是下一个他们的组件下来
看源码,id&delphi上的组件有个事件,就是在webbroser中右击时,可以设置让菜单
是否弹出来或者弹出别的菜单来的。
ie&delphi站点:http://www.euromind.com/iedelphi/
 
还可以这样:
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
if (Msg.message = wm_rbuttondown) or (Msg.message = wm_rbuttonup) then begin
Handled := true;
end;
end;
 
多人接受答案了。
 
我也学会了,谢谢。。
 
后退
顶部