使用CDHtmlDialog ,实现javascript 调用C++
.h 文件
class CHtmlSkinDlg : public CDHtmlDialog
{
。。。。。
DECLARE_DISPATCH_MAP()
// !!! 覆盖基类的这个方法
BOOL CanAccessExternal()
{
// we trust all com object (haha, you can make virus)
return TRUE;
}
// 自定义方法
BOOL set_pos(int x, int y);
}
.cpp文件
BEGIN_DISPATCH_MAP(CHtmlSkinDlg, CDHtmlDialog)
DISP_FUNCTION(CHtmlSkinDlg, "set_pos", set_pos, VT_BOOL, VTS_I4 VTS_I4)
END_DISPATCH_MAP()
.html 文件
<SCRIPT type=text/javascript>
//<![CDATA[
window.external.set_pos(600, 400);
//]]>
</SCRIPT>
相关文档:
有许多小窍门来使编程更加容易。其中之一就是eval()函数,这个函数可以把一个字符串当作一个JavaScript表达式一样去执行它。以下是它的说明
Eval 函数
功能:先解释Javascript代码,然后在执行它
用法:Eval(codeString)
codeString是包含有Javascript语句的字符串,在eval之后使用Javascript引擎编译。
举个小例子:
......
<script type="text/javascript">
<!--
function myCheck() {
var str = "";
for(var i=0; i<document.forms[0].chk_type.length; i++) {
......
While looking for information on the subject, I looked into the ONLamp article Extending Ruby with C by Garrett Rooney, the Extending Ruby chapter in the Pickaxe, README.EXT (located at /usr/share/doc/ruby1.8-dev/README.EXT.gz on my Ubuntu system) and got some help from Kjetil.
The resulting file c ......