/// <summary> /// 构造函数 /// </summary> /// <param name="dir">应用目录的 DirectoryInfo</param> /// <param name="tree">TreeView 的根节点的 TreeNodeCollection</param> /// <param name="addNode">节点增加委托</param> /// <param name="workFinish">任务完成委托</param> public treeBuilder(DirectoryInfo dir, TreeNodeCollection tree, AddNodeDele addNode, WorkFinishDele workFinish) { this._dir = dir; this._tree = tree; this._addNode = addNode; this._workFinish = workFinish; }
private void _b_检查文件_Work(WorkFinishDele workFinish) { _t_树形图.Nodes.Clear(); _t_树形图.Nodes.Add("加载中, 请稍候 ..."); DirectoryInfo di = new DirectoryInfo(_l_应用目录.Text); iden = di.Name; saveFileDialog1.Filter = "Discuz! 开发语言包|*.lang.php"; AddNode(_t_树形图.Nodes, di.Name, "[F]" + di.Name, "F|" + di.FullName); (new Thread(new treeBuilder(di, _t_树形图.Nodes[1].Nodes, new AddNodeDele(AddNode), workFinish).Work)).Start(); }
private void _b_应用语言文件_Finish() { if (this.InvokeRequired == false) { _t_树形图.Nodes[0].Remove(); Form1.Log("进程: Form1.应用语言文件 执行完毕"); Status = Status & (~_StatusEnum.Working); } else { WorkFinishDele workFinish = new WorkFinishDele(_b_应用语言文件_Finish); this.Invoke(workFinish); } }
private void _b_检查文件_Finish() { if (this.InvokeRequired == false) { _t_树形图.Nodes[0].Remove(); Form1.Log("进程: Form1.检查文件 执行完毕"); Form1.Log("提示: 如果应用已经进行过语言包提取,请先导入原语言包!"); Status = (Status & (~_StatusEnum.Working)) | _StatusEnum.Checked; } else { WorkFinishDele workFinish = new WorkFinishDele(_b_检查文件_Finish); this.Invoke(workFinish); } }