//########################################### 构造和初始化 ####################################################### //private Form_BaseClipsEditor clipsManager = null; public Form_MAnimation(Form_Main form_MainT) { InitializeComponent(); form_Main = form_MainT; Control.CheckForIllegalCrossThreadCalls = false; layoutPath = Consts.PATH_EXE_FOLDER + "\\layout_local.xml"; form_MActorList = new Form_MActorsList(this); form_MFrameEdit = new Form_MFrameEdit(this); form_MFrameLevel = new Form_MFrameLevel(this); form_MConfig = new Form_MConfig(this); form_MImgsList = new Form_MImgsList(this); form_MCLib = new Form_MCLib(); form_MTimeLine = new Form_MTimeLine(this); form_MAnimPW = new Form_MAnimPlay(this); dockContentes.Add(form_MActorList); dockContentes.Add(form_MFrameEdit); dockContentes.Add(form_MFrameLevel); dockContentes.Add(form_MConfig); dockContentes.Add(form_MImgsList); dockContentes.Add(form_MCLib); dockContentes.Add(form_MTimeLine); dockContentes.Add(form_MAnimPW); for (int i = 0; i < dockContentes.Count; i++) { DockContent dockI = ((DockContent)dockContentes[i]); dockI.HideOnClose = true; dockI.DockStateChanged += new EventHandler(all_DockStateChanged); dockI.SizeChanged += new EventHandler(all_DockStateChanged); dockI.FormClosing += new FormClosingEventHandler(all_DockContentClosing); } if (File.Exists(layoutPath)) { DeserializeDockContent dsd = new DeserializeDockContent(IDockContentMe); panel_DockPanel.LoadFromXml(layoutPath, dsd); refreshDockState(); } else { resetPanels(); } historyManager = new MA_HistoryManager(this); }