国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Javascript實例教程(19) 使用HoTMetal(4)

2019-11-21 02:24:09
字體:
來源:轉載
供稿:網友
HoTMetal中使用javascript

4. 怎樣編寫文檔格式的腳本

下面舉個宏的例子:根據預定義的頁面的布置準則來格式化文檔。為了觀察這個宏的效應,請關閉Enable Source Layout(允許源程序布局)按鈕,具體從菜單中選擇Tools(工具)->Customization(定制)。我們首先打開應用程序來初始化一些全局的變量。另外宏的名字必須為n_Application_Open,具體的代碼如下:

<MACRO name="On_Application_Open" lang="JScript"><![CDATA[

var viewWYSIWYG = 0;

var viewTagsOn = 1;

var viewSource = 2;

]]></MACRO>

這個宏必須在打開HoTMetaL應用程序的時候才被調用。它唯一的目的就是定義三個常數,這些常數用于其它的宏。這些常數只是代表了三個相應的HoTMetaL視圖。操作HoTMetaL的編輯窗口的左邊按鈕邊角上的窗口標簽,你可以看到WYSIWYG(即所見即所得)視圖,TagsOn視圖和源程序視圖。

下面得宏是檢查當前視圖是否是源視圖并且根據預定義的準則格式化整個文檔。如果視覺圖不是源視圖,一個消息就會打印出來顯示給用戶,并且告訴用戶切換視圖,代碼如下:

<MACRO name="Format Current Document" lang="JScript" id="153" desc="Apply source layout to entire document">

<![CDATA[

if (ActiveDocument.ViewType == viewSource) {

ActiveDocument.Layout();

}

else {

Application.Alert("Applying source layout only works in source view./nSwitch to source view and try again.");

}

]]></MACRO>

這里要注意,我們在這里已經使用了兩個HotMetaL的對象:ActiveDocument 和 Application。這個Layout()方法格式化了當前文檔。而Alert()方法彈出了一個警告方框。
好吧,現在讓我們來測試一下這個宏。請在HotTMetaL中打開一個文檔并將視圖切換到源程序視圖。你可以在ProgGuide目錄中選擇其中一段。并且通過使用Tools(工具)->Customization(定制)關閉Enable Source Layout按鈕。接著將其中一行用加入空格往右移,再從工具菜單中調用宏對話框。這時會展現出定義在HotMetaL.mcr文件的宏的列表。然后運行Refresh Macros宏來裝載你剛才編輯的新的宏。你將會看到Format Current Document (格式當前文檔)宏。你可以運行它并且注意那個縮進的行回到它的原位置。接下來我們測試一下Alert()方法。現在將視圖切換到TagsOn視圖并再次運行宏,會彈出如圖1的對話框:



(圖1)

現在假設你想格式化文檔中所選擇的部分。這個請求的宏(稱為Format Current Selection)跟上面所述的宏(Format Current Document)很類似。它們之間的不同只是在:Format Current Document中 Layout()方法是操作ActiveDocument 對象,而Format Current Selection中 Layout()方法是操作Selection對象:

<MACRO name="Format Current Selection" lang="JScript" id="53" desc="Apply source layout to the current selection">

<![CDATA[

if (ActiveDocument.ViewType == viewSource) {

Selection.Layout();

} else{

Application.Alert("Applying source layout only works in source view./nSwitch to source view and try again.");

}

]]></MACRO>
下面讓我們好好看看上面這個宏是如何工作的。我們在打開的文檔中縮進了兩行。第一行是以”does not specify”開頭的,而另外一句是以"referred to in this ma:"開頭的。如圖2所示:



(圖2)

現在我們選擇三行,這三行包括了以"does not specify:"開頭的行,如圖3所示:



(圖3)

最后我們點擊中在窗口左上角上的綠色箭頭,接著宏的名字(Format Current Selection)就顯示在下拉菜單的窗口中,如圖4所示:



(圖4)

值得一提的是,被選擇的行已經被格式化為原來的段落邊界。以"referred to in this ma"為開頭的第二行保持縮進狀態而沒有被格式化。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 漳浦县| 白山市| 乌鲁木齐县| 景泰县| 沈丘县| 西吉县| 仙桃市| 图木舒克市| 濉溪县| 罗田县| 卓资县| 广河县| 竹溪县| 金秀| 阿荣旗| 连江县| 长宁县| 绥滨县| 涟源市| 班玛县| 河北省| 固阳县| 宁陵县| 黄梅县| 新巴尔虎右旗| 华阴市| 浮山县| 临猗县| 连山| 凤山市| 乐陵市| 泰兴市| 乌鲁木齐市| 樟树市| 定结县| 井陉县| 疏勒县| 临城县| 云梦县| 阜新市| 独山县|