使用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>
相关文档:
43、JavaScript主页弹出窗口技巧
窗口中间弹出
<script>
window.open("http://www.cctv.com","","width=400,height=240,top="+(screen.availHeight-240)/2+",left="+(screen.availWidth-400)/2);
</script>
============
<html>
<head>
<script language="LiveScript">
fu ......
对Object的extend是一个常用的功能。举一个例子,由于javascript 没有重载(overload),而且函数的参数类型是没有定义的,所以很多时候我们都传入一个对象来作为参数已方便控制。通常在函数里面给了参数对象的默认值,这个时候就需要通过extend来把传入的参数覆盖进默认参数,如:
代码:
1. gia ......
<script language="javascript">
//none表示不显示按钮
document.getElementById("transFund_bttn").style.display = "none";
document.getElementById("transFundGether_bttn").style.display = "none";
document.getElementById("payGether_bttn").style.display = "none";
function query(){
&n ......
//添加按钮定义中的按钮
function addBtnRow() {
var table = document.getElementById('btnList');
var rownum = table.rows.length;
&nbs ......
#include < ruby.h > //
static int id_sum;
int Values[] = {5, 10 ,15,-1,20,0};
static VALUE wrap_sum(VALUE args)
{
VALUE * values = (VALUE *) args;
VALUE summer = values[0];
VALUE max = values[1];
return rb_funcall(summer,id_sum,1,max);
}
static VALUE ......