原創|使用教程|編輯:郝浩|2013-05-22 14:19:28.000|閱讀 590 次
概述:FlowChart.NET是一個通用的流程圖控件,提供了用于創建或編輯圖表的直觀的用戶交互模型。用戶有時候想要將一組撤銷和重做來作為一個單一的操作,FlowChart.NET提供了CompositeCmd類來幫助用戶實現這樣的需求,本文來了解一下這種符合命令的使用。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
用戶有時候想要將一組撤銷和重做來作為一個單一的操作,FlowChart.NET提供了CompositeCmd類來幫助用戶實現這樣的需求。CompositeCmd對象作為其他派生命令對象的一個容器,當撤銷或是重做包含在一個復合命令中時,所有的子命令就將會表現出撤銷或是重做。
要添加一個命令老調用AddSubCmd方法,調用執行方法來執行包含在復合中的所有的子命令,子命令會被按照原來的被添加到容器中的順序執行或是重做,并會被以相反的順序被撤銷。
通常FlowChart.NET會隱式的產生命令對象以便于用戶響應或是方法調用,并且在歷史隊列中自動的記錄。你不能直接的訪問這些命令,以及通過AddSubCmd添加它們到一個復合中。
C#
// Implicitly created undo records will be saved here CompositeCmd composite = diagram.UndoManager.StartComposite("Create group"); // Call methods that create undo records ShapeNode node1 = diagram.Factory.CreateShapeNode(0, 0, 30, 30); ShapeNode node2 = diagram.Factory.CreateShapeNode (0, 0, 15, 15); Group g = diagram.Factory.CreateGroup(node1); g.AttachToCorner(node2, 0); // This goes to the active composite too ChangeItemCmd change = new ChangeItemCmd(node2, ""); node2.Locked = true; change.Execute(); // Save the active composite in history composite.Execute();
Visual Basic
' Implicitly created undo records will be saved here Dim composite As CompositeCmd = Diagram.UndoManager.StartComposite("Create group") ' Call methods that create undo records Dim node1 As ShapeNode = Diagram.Factory.CreateShapeNode(0, 0, 30, 30) Dim node2 As ShapeNode = Diagram.Factory.CreateShapeNode(0, 0, 15, 15) Dim g As Group = Diagram.Factory.CreateGroup(node1) g.AttachToCorner(node2, 0) ' This goes to the active composite too Dim change As New ChangeItemCmd(node2, "") node2.Locked = True change.Execute() ' Save the active composite in history composite.Execute()
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件