wps表格加载项续写内容一

书接上回:wps加载项简单实现过程

publish.xml内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<jsplugins>
    <jsplugin name="WPS_EXT_ADDINS" enable="enable_dev" url="file://"  type="et" version="0.01" debug=""/>    
</jsplugins>

ribbon.xml内容如下

<customUI onLoad="OnWPSWorkTabLoad">
    <ribbon startFromScratch="false">
        <tabs>
            <tab id ="tab1" label = "WPS_EXT_ADDINS" getVisible="getVisibleMacro">
                <group id = "set_interior" label="高亮行列">
                    <checkBox id = "cBox_rowinterior" onAction="checkbox_onAction" label="高亮行"  getPressed="GetPressed" supertip="高亮行  " />
                    <checkBox id = "cBox_columninterior" onAction="checkbox_onAction" label="高亮列"  getPressed="GetPressed" supertip="高亮列" />
                </group>
                <group id = "group_taskpane" label="任务窗格">
                <!-- supertip 鼠标指向控件时,显示的文本信息  showLabel = "false" -->
                    <button id = "bt_taskpane" onAction = "button_onAction" getLabel="get_button_label"   getEnabled="getVisibleMacro" imageMso="T"  supertip="显示或关闭任务窗格"  />
                    <button id = "bt_addsumformula" onAction = "button_onAction" getLabel="get_button_label"   getEnabled="getVisibleMacro" imageMso="AutoSum"  supertip="添加公式以计算假合并单元格值的和"  />                    
                </group>
                <group id="g3">                
                    <!-- <separator id="S1" />                     -->
                </group>
                <group id = "group_calculate" label="计算公式">
                    
                    <!-- checkBox 自定义时不能指定图标 -->
                    <checkBox id = "cBox_protectformula" onAction="checkbox_onAction" label="保护公式"  getPressed="GetPressed" supertip="是否允许编辑活动单元格公式" />
                    <checkBox id = "cBox_locate_cell" onAction="checkbox_onAction" label="定位尾格"  getPressed="GetPressed" supertip="粘贴或批量修改单元格值后,定位首格或尾格为活动单元格" />
                    </group>
                    <group id = "group_function" label="常用功能">
                    <checkBox id = "cBox_AutoSave" onAction="checkbox_onAction" label="自动保存"  getPressed="GetPressed" supertip="执行定时保存功能,默认10秒。可修改 remainingtime 初始值  " />
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>

main.js内容如下:

function OnWPSWorkTabLoad(ribbonUI) {
    //alert("TAB 初始化入口函数")
    wps.ribbonUI = ribbonUI;
    OnJSWorkInit(); //初始化文档事件(全局参数,挂载监听事件)
    activeTab();
    AutoSave();
    return true;
}

function OnJSWorkInit() {
    pInitParameters(); //所有配置控制的初始化过程
    AddWorkbookEvent(); //挂接文档事件处理函数
}

function pInitParameters() {
    wps.PluginStorage.setItem("taskpaneID", 0);
    wps.PluginStorage.setItem("end_cell_address", false);
    wps.PluginStorage.setItem("protect_cell_formula", false);
    wps.PluginStorage.setItem("last_cell_address", "");
    wps.PluginStorage.setItem("last_cell_formula", "nothing");
    wps.PluginStorage.setItem("remainingtime", 30);
    wps.PluginStorage.setItem("IsAutoSave", true);
    wps.PluginStorage.setItem("timer", 0);
    wps.PluginStorage.setItem("interiorcolor", {r:189,g:255,b:189});
    wps.PluginStorage.setItem("cBox_rowinterior", true);
    wps.PluginStorage.setItem("cBox_columninterior", true);
}

//挂载WPS的表格事件
function AddWorkbookEvent() {
    wps.ApiEvent.AddApiEventListener("SheetSelectionChange", on_Workbook_SheetSelectionChange);
     wps.ApiEvent.AddApiEventListener("SheetChange", on_Workbook_SheetChange);
}

function activeTab() {
    wps.ribbonUI.ActivateTab('WPS_EXT_ADDINS');
}

function taskpane() {

    //console.log("启动任务窗格。")
    //控制任务窗格显示/隐藏 --使用缓存
    let tsId = wps.PluginStorage.getItem("taskpaneID");
    if (!tsId) {
        let tskpane = wps.CreateTaskPane(Application.Env.GetAppDataPath() + "/kingsoft/wps/jsaddons/WPS_EXT_ADDINS_0.01/index_TaskPane.html", "");
        //let tskpane = wps.CreateTaskPane(Util.GetUrlPath() + "task")
        let id = tskpane.ID;
        wps.PluginStorage.setItem("taskpaneID", id)
        tskpane.Visible = true;
        tskpane.Width = 600;
        tskpane.DockPosition = wps.Enum.JSKsoEnum_msoCTPDockPositionLeft;
    } else {
        let tskpane = wps.GetTaskPane(tsId);
        //tskpane.Visible = !tskpane.Visible
        tskpane.Delete();
        wps.PluginStorage.setItem("taskpaneID", 0);
    }

    return true;
}

黑龙江省
浏览 170
收藏
点赞
分享
+1
+1
全部评论