学AI代码笔记【024】号【嘉年华】


24.2025年09月05日 星期五学AI代码笔记【024】号

主要内容

🔔

监听重命名视图的事件

View.OnRename(方法)

监听重命名视图的事件 | WPS开放平台

说明

为当前视图添加 Rename 事件,当被修改 Name 时触发。注意在脚本编辑器中使用时,脚本运行结束就会退出运行,这时可能回调无法被正常触发

语法

表达式.OnRename(Callback)

表达式: View

这个可以参照监听重命名数据表的事件【009】

监听重命名的,然后还能打印出来

关键代码

  1. 官方

function main() {
    let eventContext;
    eventContext = Application.Sheets(1)
        .Views(1)
        .OnRename(data => {
            console.log(data);
            // 取消事件监听
            eventContext.Destroy();
        });
    Application.Sheets(1).Views(1).Name = 'newName';
    //这里会执行OnRename的回调
}
main();
  1. 注释版本

function main() {
    let eventContext;  // 定义一个变量 eventContext ,用于存储事件监听上下文    
// 为 Application.Sheets(1).Views(1) 的 Rename 事件添加监听器
    eventContext = Application.Sheets(1)
        .Views(1)
        .OnRename(data => {  // 监听视图重命名事件( OnRename ),当视图名称被修改时触发回调函数            
console.log(data);  // 打印事件返回的数据到控制台,数据包括原始值和修改后的值            
// 取消事件监听
            eventContext.Destroy();  // 调用 Destroy 方法取消当前事件监听,防止后续触发        
});
    // 修改视图名称以触发 OnRename 回调
    Application.Sheets(1).Views(1).Name = 'newName';  
// 将第一个工作表的第一个视图名称设置为 'newName',这将触发 OnRename 的回调    
// 这里会执行 OnRename 的回调
    // 上述代码中,设置 Name 属性的操作会触发之前定义的 OnRename 回调函数}
main();  // 调用主函数,运行上述逻辑1
  1. 打印结果,重命名之前和之后的

function main() {
    let eventContext;  // 定义变量用于存储事件监听的上下文对象
    // 监听视图重命名事件 OnRename
    eventContext = Application.Sheets(1)
        .Views(1)
        .OnRename(data => {  // 绑定重命名事件的回调函数            
        console.log("视图重命名事件触发,返回数据如下:", data);  // 打印事件返回的数据
            console.log("原始名称 (originValue):", data.originValue);  // 原始名称
            console.log("修改后的名称 (value):", data.value);  // 修改后的名称
            eventContext.Destroy();  // 取消事件监听以防止重复触发
        });
    // 修改视图名称以触发 OnRename 回调
    const newName = 'newName';  // 设置新的视图名称
    console.log(`即将修改视图名称为: ${newName}`);  // 提示即将执行的操作
    Application.Sheets(1).Views(1).Name = newName;  // 修改视图名称,触发 OnRename 回调
}
main();  // 调用主函数,运行上述逻辑
  1. 优化,前后的都打印出来

function main() {
    let eventContext;  // 定义变量用于存储事件监听的上下文对象
    // 监听视图重命名事件 OnRename
    eventContext = Application.Sheets(1)
        .Views(1)
        .OnRename(data => {  // 绑定重命名事件的回调函数
            console.log("视图重命名事件触发,返回数据如下:");  
            console.log("修改前的名称 (originValue):", data.originValue);  // 打印原始名称
            console.log("修改后的名称 (value):", data.value);  // 打印修改后的名称
            eventContext.Destroy();  // 取消事件监听以防止重复触发
        });
    // 获取当前视图名称并打印
    const currentName = Application.Sheets(1).Views(1).Name;
    console.log(`当前视图名称为: ${currentName}`);  // 打印修改前的名称
    // 修改视图名称以触发 OnRename 回调
    const newName = 'newName';  // 设置新的视图名称
    console.log(`即将修改视图名称为: ${newName}`);  // 提示即将执行的操作
    Application.Sheets(1).Views(1).Name = newName;  // 修改视图名称,触发 OnRename 回调
}
main();  // 调用主函数,运行上述逻辑

多维表代码使用案例库

【1】多维表代码使用案例库


湖南省
浏览 32
收藏
点赞
分享
+1
+1
全部评论