原文转自 https://blog.csdn.net/qianbin3200896/article/details/81452822

1、ActiveX控件部分(JS到ActiveX控件)
继续上一篇博客中新建的项目,找到DActiveXDemo,右键添加——属性

添加第一个参数,用来传递字符串,具体如下

可以看到在ActiveXDemoCtrl.h文件中创建了一个变量和一个属性修改事件

待会我们我在OnParStrChanged事件中编写参数传递的代码,这里我们先给之前创建的CActiveXDlg对话框添加一个文本框用来显示js传来的参数

然后给该文本框添加对应的成员变量

接下来我们可以修改OnparStrChanged代码,具体如下

void CActiveXDemoCtrl::OnparStrChanged(void)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState()); // TODO: 在此添加属性处理程序代码
m_MyDlg.m_parStr.Format("%s",m_parStr);
m_MyDlg.UpdateData(FALSE); SetModifiedFlag();
}

然后重新生成项目。

2、网页部分
接下来修改html代码如下:

<HTML>
<HEAD>
<TITLE>js传递参数给ActiveX控件</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
<SCRIPT LANGUAGE="JavaScript">
function SendToActiveX()
{
if (InputStr.value!="")
{
Test_js.parStr= InputStr.value;
}
}
</SCRIPT>
</HEAD>
<BODY> 请输入你想传递的字符串: <INPUT TYPE="text" NAME="InputStr" VALUE="">
<p></p>
<INPUT TYPE="button" NAME="传参"
VALUE="测试js传参数: " ONCLICK=SendToActiveX()> <p></p> <OBJECT ID="Test_js" WIDTH=% HEIGHT=%
CLASSID="CLSID:B852A7D3-3356-400E-A2BF-A15F7D0F99CB">
<PARAM NAME="_Version" VALUE="">
<PARAM NAME="_ExtentX" VALUE="">
<PARAM NAME="_ExtentY" VALUE="">
<PARAM NAME="_StockProps" VALUE="">
</OBJECT> </BODY>
</HTML>

用IE浏览器运行html文件,输入对应的字符串然后点击按钮即可。效果如下

3、代码下载

下面给出代码的链接(含源代码和html文件):https://download.csdn.net/download/qianbin3200896/10586112

基于MFC的网页ActiveX控件开发全程实录2(js向ActiveX控件传递参数)的更多相关文章

  1. 【转】android应用开发全程实录-你有多熟悉listview?---不错

    原文网址:http://www.cnblogs.com/noTice520/archive/2011/12/05/2276379.html 今天给大家带来<android应用开发全程实录> ...

  2. android应用开发全程实录-你有多熟悉listview

    http://blog.csdn.net/notice520/article/details/7040962 今天给大家带来<android应用开发全程实录>中关于listview和ada ...

  3. android应用开发全程实录-你有多熟悉listview?

    今天给大家带来<android应用开发全程实录>中关于listview和adatper中的部分.包括listview的基本使用,listview的优化等. 我们经常会在应用程序中使用列表的 ...

  4. vs2010开发activex(MFC)控件/ie插件(三),js调用ocx控件的接口函数

    原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/50802280   js调用ocx控件的接口函数,先看demo效果:      简单测试过程 ...

  5. 最全的基于MFC的ActiveX控件开发教程

    浏览器插件之ActiveX开发(一) 一般的Web应用对于浏览器插件能不使用的建议尽量不使用,因为其涉及到安全问题以及影响用户安装(或自动下载注册安装)体验问题.在有特殊需求(如涉及数据安全的金融业务 ...

  6. 基于MFC的ActiveX控件开发教程------------浏览器插件之ActiveX开发

    浏览器插件之ActiveX开发(一) 一般的Web应用对于浏览器插件能不使用的建议尽量不使用,因为其涉及到安全问题以及影响用户安装(或自动下载注册安装)体验问题.在有特殊需求(如涉及数据安全的金融业务 ...

  7. 【转载】基于MFC的ActiveX控件开发(1)

    原文:http://iysm.net/?p=114 ActiveX 控件是基于组件对象模型 (COM) 的可重用软件组件,广泛应用于桌面及Web应用中.在VC下ActiveX控件的开发可以分为三种,一 ...

  8. MFC-[转]基于MFC的ActiveX控件开发

    作者:lidan | 出处:博客园 | 2012/3/13 16:10:34 | 阅读22次 ActiveX 控件是基于组件对象模型 (COM) 的可重用软件组件,广泛应用于桌面及Web应用中.在VC ...

  9. 【转载】基于MFC的ActiveX控件开发(3)

    原文:http://iysm.net/?p=122 3.事件 ActiveX 控件使用事件通知容器控件上发生了某些事情.事件的常见示例包括单击控件.使用键盘输入数据和控件状态更改.当发生这些操作时,控 ...

随机推荐

  1. 微信小程序开发者工具详解

    一.微信小程序web开发工具下载地址 1.1 在微信公众平台-小程序里边去下载开发工具下载地址. 1.2 下载后安装一下就可以使用了: 二.创建项目 2.1 微信小程序web开发工具需要扫码登陆,所以 ...

  2. rapidjson的简单使用(转)

    rapidjson的简单使用 C++ rapidjson 基础入门 rapidjson图文讲解

  3. Docs-.NET-C#-指南-语言参考-预处理器指令:#endregion(C# 参考)

    ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#endregion(C# 参考) 1.返回顶部 1. #endregion(C# 参考) 2015/07/20 #endreg ...

  4. matplotlib常用操作2

    关于matplotlib学习还是强烈建议常去官方http://matplotlib.org/contents.html里查一查各种用法和toturial等. 下面是jupyter notebook代码 ...

  5. 修复gitlab服务器突然停电导致PostgreSQL损坏的数据库

    最开始是存储的卷组受损,使用的DRBD,使用了xfs分区格式: 挂载也报错: mount /dev/drbd0 /var/opt mount: wrong fs type, bad option, b ...

  6. Spring cloud微服务安全实战-5-11实现基于token的SSO(1)

    基于服务器session的SSO的方案,用户的登陆状态都是存在服务器端的 基于浏览器cookie的token实现一个sso,在原来的基础上做进一步的改造.让他不依赖session.而是完全由cooki ...

  7. VS2010/VS2012/VS2015下openGL环境配置(转)

    按:按照下述博文,三个例子均成功. https://blog.csdn.net/so_geili/article/details/51685005 请仔细阅读每一个字. 为了学习<OpenGL超 ...

  8. c# Invoke的新用法

    在C# 3.0及以后的版本中有了Lamda表达式,像上面这种匿名委托有了更简洁的写法..NET Framework 3.5及以后版本更能用Action封装方法.例如以下写法可以看上去非常简洁: voi ...

  9. KEGG富集分析散点图.md

    输入数据格式 pathway = read.table("kegg.result",header=T,sep="\t") pp = ggplot(pathway ...

  10. LeetCode 941. 有效的山脉数组(Valid Mountain Array)

    941. 有效的山脉数组 941. Valid Mountain Array 题目描述 给定一个整数数组 A,如果它是有效的山脉数组就返回 true,否则返回 false. 让我们回顾一下,如果 A ...