Exemple #1
0
        /// <summary>
        /// 刷新数据
        /// </summary>
        public void Reload()
        {
            EnumType etype = EnumTable.GetEnumTypeByID(m_parentDBID);
            EnumItem item  = etype.Items[m_asParentsPos];

            this.Name         = item.Name;
            this.Ename        = item.Ename;
            this.Parent_Ename = item.Parent_Ename;
        }
Exemple #2
0
        public TParmEditForm(AI_TemplateParmItem item, bool bLockName)
        {
            InitializeComponent();

            // 是否锁定名字不允许编辑
            if (bLockName)
            {
                this.txtName.Enabled  = false;
                this.txtEname.Enabled = false;
            }

            this.Text               = "编辑变量";
            this.m_keyID            = Int32.Parse(item.keyID);
            this.cmbVarType.Enabled = false;
            this.TemplateParmItem   = item;
            // 填写变量名、变量类型
            this.txtName.Text    = item.Name;
            this.txtEname.Text   = item.Ename;
            this.cmbVarType.Text = item.GetTypeString();

            // 填写默认值
            if (this.cmbVarType.Text == "数字" ||
                this.cmbVarType.Text == "字符串")
            {
                this.cmbDefaultValue.Visible = false;
                this.txtDefaultValue.Visible = true;
                this.txtDefaultValue.Text    = item.defaultValue;
                return;
            }
            else
            {
                this.cmbDefaultValue.Visible = true;
                this.txtDefaultValue.Visible = false;
                cmbDefaultValue.Items.Clear();

                EnumType etype = EnumTable.GetEnumTypeByID(item.m_type.ToString());
                cmbDefaultValue.Items.AddRange(etype.Items.ToArray());
                if (item.defaultValue != null && item.defaultValue != "")
                {
                    cmbDefaultValue.SelectedIndex = Int32.Parse((item.defaultValue));
                }
            }
        }
Exemple #3
0
        /// <summary>
        /// 显示AI动作的数据
        /// </summary>
        /// <param name="action">AI动作</param>
        private void ShowActionData(AI_Action action)
        {
            this.textBoxX1.Text = action.Info;

            for (int i = 0; i < 5; i++)
            {
                // 多余的参数,禁止掉
                if (i >= action.Args.Count)
                {
                    labelArray[i].Text       = "-";
                    comboBoxArray[i].Text    = "";
                    comboBoxArray[i].Enabled = false;
                    checkBoxArray[i].Checked = false;
                    checkBoxArray[i].Enabled = false;
                }
                else
                {
                    AI_Parm parm = action.Args[i];

                    // 步骤1:初始化枚举(常数)列表 如果是枚举,则添加枚举项进来。
                    comboBoxArray[i].Enabled = true;
                    comboBoxArray[i].Items.Clear();

                    if (parm.m_type > 0)
                    {
                        comboBoxArray[i].Items.AddRange(EnumTable.GetEnumTypeByID(parm.m_type.ToString()).Items.ToArray());
                    }

                    // 改标签
                    string strLab = null;

                    switch (parm.m_type)
                    {
                    case -1:
                    {
                        strLab = "数字";

                        // 目前只支持数字的变量类型
                        checkBoxArray[i].Enabled = true;

                        break;
                    }

                    case -2:
                    {
                        strLab = "字符串";

                        // 暂时不支持字符串的变量类型
                        checkBoxArray[i].Enabled = false;

                        break;
                    }

                    default:
                    {
                        strLab = "枚举";

                        // 暂时不支持枚举的变量类型
                        checkBoxArray[i].Enabled = false;

                        break;
                    }
                    }

                    if (parm.Name.Length > 10)
                    {
                        labelArray[i].Text = string.Format("{0}... ({1})", parm.Name.Substring(0, 8), strLab);
                    }
                    else
                    {
                        labelArray[i].Text = string.Format("{0} ({1})", parm.Name, strLab);
                    }

                    // 步骤2:初始化 模板参数,如果定义了这种类型的模板变量,就加进来。
                    comboBoxArray[i].Items.AddRange(AI_TemplateParmTable.GetAIParamTemplateTable().AIParamItemList.ToArray());

                    // 步骤3:设值
                    if (parm.Value != null)
                    {
                        comboBoxArray[i].Text = parm.Value.ToString();
                    }
                    else
                    {
                        comboBoxArray[i].Text = "";
                    }

                    // 步骤4:读取参数类型
                    checkBoxArray[i].Checked = parm.IsVar;
                }
            }
        }