欢迎您来到 数字平台。 您尚未登录。[登录] [注册新用户]
当前位置: 论坛首页 / 栏目 产品与服务 / 文章 666

点击:1315

[顶层访客留言] [回复顶层(需要先登录)] [表状] [详细]
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章跟帖
文章id: 666
批删除拼音

作者: xietao


有了前面的批加拼音,批删除拼音就不难想象了。

在Main()函数中适当位置增加一个功能入口:

            // 批删除拼音
            actions.NewItem("批删除拼音", "为当前记录以及同库的其他后方记录删除拼音", "BatchRemovePinyin", false);

然后在MyHost类的适当位置增加BatchRemovePinyin()函数的代码:

    void BatchRemovePinyin()
    {
        int nRet = 0;
        Stop stop = new DigitalPlatform.Stop();
        stop.Register(this.DetailForm.MainForm.stopManager, true); // 和容器关联
        stop.Style = StopStyle.EnableHalfStop;
        stop.BeginLoop();

        try
        {

            for (; ; )
            {
                Application.DoEvents();
                if (stop.State != 0)
                    break;

                RemovePinyin(this.PinyinCfgXml);
                RemovePinyin(this.OldPinyinCfgXml);

                nRet = this.DetailForm.DoSaveAll();
                if (nRet == -1)
                    break;
                nRet = this.DetailForm.SafeLoadRecord(this.DetailForm.BiblioRecPath, "next");
                if (nRet <= 0)
                    break;
            }

        }
        finally
        {
            stop.EndLoop();
            stop.Unregister();
        }

    }

代码修改完毕。保存它。试验一下吧。

思考题:

要是我想从当前记录开始,向ID号更小的方向去继续处理循环呢?

艾,还是把答案公布了吧。

上面代码中有一行:

                nRet = this.DetailForm.SafeLoadRecord(this.DetailForm.BiblioRecPath, "next");

把"next"改为"prev"就可以了。

~~~

自从学会了如何循环处理多条记录,恐怕不少人以后想象力就是一发不可收了吧!



发表时间: 2011-08-11 17:01:54



  • 普通文章 神奇的脚本 (一) xietao 2011-08-11 15:34:50[点击:39887]
  • 普通文章 运行条件 xietao 2011-08-11 15:40:24 (ID:660) [点击:1180]
  • 普通文章 新的加拼音功能 xietao 2011-08-11 15:50:42 (ID:661) [点击:1205]
  • 普通文章 删除全部拼音子字段的功能和代码 xietao 2011-08-11 16:14:26 (ID:662) [点击:1303]
  • 普通文章 老的代码实现不了老规则加拼音 xietao 2011-08-11 16:27:13 (ID:663) [点击:1299]
  • 普通文章 选择多音字的缓存 xietao 2011-08-11 16:44:19 (ID:664) [点击:1139]
  • 普通文章 批加拼音! xietao 2011-08-11 16:55:24 (ID:665) [点击:1258]
  • 普通文章 批删除拼音 xietao 2011-08-11 17:01:54 (ID:666) [点击:1315]
  •  

    在线用户
    (无) 
    当前栏目在线用户数 0, 总在线用户数 0