JavaScript第19章.pptVIP

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JavaScript第19章

1-* 北京源智天下科技有限公司 联系方式: 联系方式: 北京源智天下科技有限公司 第十九讲:JavaScript与插件 讲师:杨贵 e-mail:jtclass@163.com 课程内容安排 创建ActiveX控件 使用ActiveX控件 创建Flash 使用FLASH 提示:JavaApplet与Flash的使用方法相似,在此只讲当前十分流行的Flash 创建ActiveX控件 ActiveX是微软公司提出的一套二进制组件发布方案、实现规范和工具集合的总称。 Windows平台上只要遵循COM规范的软件都能相互访问并且实现二进制组件的复用。 ActiveX控件本质上是一个COM服务器,自动化语言运行时库就是自动化客户机。 Visual Basic、JavaScript等脚本语言是使用ActiveX控件的最佳选择 开始创建ActiveX 创建ActiveX控件 开始创建ActiveX控件 在VS2005主界面窗口中,选择菜单栏“新建”|“项目”命令,打开“新建项目”对话框。 在“项目类型”列表框中单击“Visual C++”|“ATL”项目。选择“模板”视图中单击“ATL项目”,在“名称”编辑框中输入项目名称“MessageBoard”,在“位置”编辑框中输入项目保存的路径。单击“确定”按钮,打开“ATL项目向导”对话框。 单击“应用程序设置”标签,勾选“允许合并代理/存根(stub)代码”复选框,单击“完成”按钮完成项目的创建。 添加ATL控件 选择菜单栏“视图”|“类视图”命令,打开“类视图”列表框。在其中右击“MessageBoard”项目,选择右键菜单“添加”|“类”命令,打开“添加类”对话框。 选择“类别”列表框中的“ATL”项目,选择“模板”列表框中的“ATL控件”项目,如图19-3所示。单击“添加”按钮,打开“ATL控件向导”对话框。 单击“名称”标签,在“简称”编辑框中输入“MsgBoardCtl”(不包括引号)。 单击“选项”标签,勾选“连接点”复选框。单击“外观”标签,勾选“可插入”复选框,单击“完成”按钮完成控件的添加操作。 为控件添加属性 右击“类视图”列表框中的“IMsgBoardCtl”项目,选择右键菜单“添加”|“添加属性”命令,打开 “添加属性向导”窗口。 单击“属性类型”下拉列表框的下三角按钮,选择“BSTR”项目。在“属性名”编辑框中输入“msgText”,单击“完成”按钮完成操作。 为实现类添加成员变量 右击“类视图”列表框中的“CMsgBoardCtl”项目,选择若键菜单“添加”|“添加变量”命令,随即打开“添加成员变量向导”对话框。 在“变量类型”列表框中填写“BSTR”,在“变量名”编辑框中填写“m_bstrMessage”,单击“完成”按钮退出向导。 创建ActiveX控件 改写相关函数 在“类视图”列表框中找到“OnDraw”方法并双击它 。 此时代码编辑器中的光标定位到OnDraw方法的代码中,将OnDraw方法中原有的代码全删除,然后添加下列代码,使OnDraw方法看起来如下: 创建ActiveX控件 HRESULT OnDraw(ATL_DRAWINFO di) // 绘图函数 { RECT rc = *(RECT*)di.prcBounds; // 获取ActiveX对象所占区域大小 Rectangle( di.hdcDraw, rc.left, rc.top, rc.right, rc.bottom ); // 画出矩形框 HFONT hfont = CreateFont( 14, 7, 0, 0, FW_NORMAL, FALSE, FALSE, 0, ANSI_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH|FF_SWISS,宋体); // 创建字体 SelectObject( di.hdcDraw, hfont ); // 将字体选入设备上下文 RECT msgRc; // 文字输出区域 msgRc.left = rc.left + 5; // 设置区域大小 msgRc.top = rc.top + (rc.bottom - rc.top)/2; // 上 msgRc.right = rc.right - 5; // 右 msgRc.bottom = rc.bottom - 5; // 下 char *pcmsg = ConvertBSTRToString( this-m_bstrMessage ); // 将COM字符串转为

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档