<span class="t18">HoTMetal中使用<a href="http://www.knowsky.com/article.asp?typeid=36">javascript</a> <br><br>6.怎样编写一个保存模块脚本<br><br>在本节教程的例子中,我们创建了一个新的保存模块文件对话框。HoTMetaL里面有几个模板你可以从中进行选择。模板只是一个普通的网页,这个网页被保存HoTMetaL应用程序目录的Template模板中。当你从文件菜单中选择新项目的时候,其中一个标签选项是Page From Template。当你选择了它,就会弹出一个标签对话框,上面包含了各种模板: General、 WebTV、 W3C、 Frame Pages、 Layout。<br><br>你可以通过保存当前文件到Template目录下的一个目录来创建一个新的模板。下面的宏,即Save As 模板,向你展示了怎样使用HMExtras.FileDlg的DisplayFileDlg方法创建一个Save As对话框。这个对话框使用Template目录作为缺省的位置,以下是详细的代码:<br><br><macro name="Save As Template" lang="JScript" id="90"><br>var obj = new ActiveXObject("HMExtras.FileDlg");<br><br>var filter = "Web Page Template (*.htm, *.html)|*.htm;*.html|All Files (*.*)|*.*||";<br><br>if (obj.DisplayFileDlg(0, "File Save As", filter, Application.Path + "\\Template")) {<br><br>ActiveDocument.SaveAs(obj.FullPathName, true); // save and put on recent file list <br><br>}<br><br>]]></macro><br><br>下面解释一下上面的代码:首先,我们利用HMExtras库的FileDlg COM对象来创建一个ActiveX 控件:<br><br>var obj = new ActiveXObject("HMExtras.FileDlg");<br><br>接着利用几个条目来创建一个过滤器:<br><br>var filter = "Web Page Template (*.htm, *.html)|*.htm;*.html|All Files (*.*)|*.*||";<br><br>然后我们通过调用obj.DisplayFileDlg来显示文件对话框,最后我们在如果对话框存在的时候保存文件。<br>HoTMetal中使用Javascript<br><br>6.怎样编写一个保存模块脚本<br><br>让我们增加第一个Save As 模板宏到文件菜单中。你可以点击文件菜单条并选择定制。接着选择菜单标签并导航到你想增加新的宏的地方去。点击Add Submenu(增加子菜单)按钮并填充缺少的项。对话框如图1所示。<br><br><img src="http://www.pconline.com.cn/pcedu/empolder/wz/javascript/10111/pic/20011124_js20_12.gif" alt="Javascript实例教程(19) 使用HoTMetal(6)_基础知识" ><br><br>(图1)<br><br>下面我们测试一下这个菜单项以及宏是如何工作的。拉下文件菜单,你可以看到多了一个Save模板项,点击它,你可以得到如图2的对话框:<br><br><img src="http://www.pconline.com.cn/pcedu/empolder/wz/javascript/10111/pic/20011124_js20_13.gif" alt="Javascript实例教程(19) 使用HoTMetal(6)_基础知识" ><br><br>找到你希望保存文件的目录并给出文件名字,点击Save按钮确认。</span>