private void button_OK_Click(object sender, EventArgs e)
 {
     if(element!=null)
     {
         element.name = (textBox_mapName.Text.Trim());
     }
     //图片映射表
     element.imgMappingList.removeAll();
     for (int i = 0; i < panel_ImgMap.Controls.Count / 3; i++)
     {
         ComboBox comboBoxFrom = (ComboBox)panel_ImgMap.Controls[i * 3 + 1];
         ComboBox comboBoxTo = (ComboBox)panel_ImgMap.Controls[i * 3 + 2];
         ImageMappingElement imgMapElement = new ImageMappingElement(form_Main.mapImagesManager);
         imgMapElement.ImgFrom = form_Main.mapImagesManager[comboBoxFrom.SelectedIndex];
         imgMapElement.ImgTo = form_Main.mapImagesManager[comboBoxTo.SelectedIndex];
         element.imgMappingList.addElement(imgMapElement);
     }
     this.Close();
 }
Пример #2
0
 //获得映射图片
 public static MImgElement getMappedImage(ObjectVector imgMappingList, MImgElement imgElementFrom)
 {
     if (imgMappingList == null)
     {
         return(null);
     }
     for (int i = 0; i < imgMappingList.getElementCount(); i++)
     {
         Object obj = imgMappingList.getElement(i);
         if (!(obj is ImageMappingElement))
         {
             return(null);
         }
         ImageMappingElement imgMaElement = (ImageMappingElement)obj;
         if (imgMaElement.ImgFrom.Equals(imgElementFrom))
         {
             return(imgMaElement.ImgTo);
         }
     }
     return(null);
 }
        //向图片映射列表中添加一条数据
        private void addImgMapElement(ImageMappingElement imgMapElement)
        {

            CheckBox checkBox = new CheckBox();
            checkBox.Width = 24;

            ComboBox boxMapFrom = new ComboBox();
            boxMapFrom.Width = (panel_ImgMap.Width - 60) / 2;
            boxMapFrom.DropDownStyle = ComboBoxStyle.DropDownList;
            boxMapFrom.MaxDropDownItems = 20;
            addItemsToComboBox(boxMapFrom);
            boxMapFrom.SelectedIndexChanged += new EventHandler(ComboBox_SelectIndexChanged);

            ComboBox boxMapTo = new ComboBox();
            boxMapTo.Width = (panel_ImgMap.Width - 60) / 2;
            boxMapTo.DropDownStyle = ComboBoxStyle.DropDownList;
            boxMapTo.MaxDropDownItems = 20;
            addItemsToComboBox(boxMapTo);
            boxMapTo.SelectedIndexChanged += new EventHandler(ComboBox_SelectIndexChanged);


            panel_ImgMap.Controls.Add(checkBox);
            panel_ImgMap.Controls.Add(boxMapFrom);
            panel_ImgMap.Controls.Add(boxMapTo);

            if (imgMapElement != null)
            {
                noEvent = true;
                if (imgMapElement.ImgFrom != null)
                {
                    boxMapFrom.SelectedIndex = imgMapElement.ImgFrom.GetID();
                }
                if (imgMapElement.ImgTo != null)
                {
                    boxMapTo.SelectedIndex = imgMapElement.ImgTo.GetID();
                }
                if (imgMapElement.ImgFrom.image != null && imgMapElement.ImgTo.image != null && (!imgMapElement.ImgFrom.image.Size.Equals(imgMapElement.ImgTo.image.Size)))
                {
                    checkBox.Text = "!";
                }
                noEvent = false;
            }
        }
 private void button_AddMap_Click(object sender, EventArgs e)
 {
     if (noEvent || antetype==null)
     {
         return;
     }
     AntetypesManager antetypesManager = (AntetypesManager)antetype.GetTopParent();
     MImgsManager imgsManager = antetypesManager.mapsManager.form_Main.form_MAnimation.form_MImgsList.mImgsManager;
     if (imgsManager.Count() > 0)
     {
         ImageMappingElement element = new ImageMappingElement(imgsManager);
         element.ImgFrom = imgsManager[0];
         element.ImgTo = imgsManager[0];
         //添加到数据
         antetype.imgMappingList.addElement(element);
         //添加到UI
         addImgMapElement(element);
         //刷新显示
         refreshActor();
     }
 }