private void btn保存设置_Click(object sender, EventArgs e) { if (txt检测项名称.Text == "") { MessageBox.Show("请输入检测项名称"); return; } if (!ParameterSetControl.HaveSet()) { return; } string testItemName = txt检测项名称.Text; string testItemType = cmb选择检测项.Text; TestItem testItem = MyRun.model.testItems.Find(x => x.Name == testItemName); if (testItem != null) { if (MessageBox.Show("检测项" + testItemName + "已存在\n是否覆盖", "存在同名检测项", MessageBoxButtons.YesNo) != DialogResult.Yes) { return; } } List <Parameter> parameters = ParameterSetControl.initParameterList(); ParameterSetControl.Save(ref parameters); ParameterSetControl.WriteSample(MyRun.appPath + "\\model\\" + MyRun.model.modelName, testItemName + ".bmp"); if (TestItemStep.AddTestItem(testItemName, testItemType, parameters, MyRun.nowModel, ref MyRun.model)) { MyRun.CreateModelWindow.AddTestItemNode(testItemName); } MyRun.nowModel.TestItemName = testItemName; MyRun.CreateModelWindow.SelectChooseModelTypeWindow(); }
private void 检测项添加_Load(object sender, EventArgs e) { //关联Halcon窗口 halconFun.SetWindowHandle(pictureBox1); //获取可用的检测功能 TestItemStep.GetTestItemTypeList(out List <string> testItemTypes); cmb选择检测项.DataSource = testItemTypes; }
private void cmb选择检测项_SelectedIndexChanged(object sender, EventArgs e) { string testItemType = cmb选择检测项.Text; TestItemStep.GetParameterSettingControl(testItemType, out ParameterSetControl); pnl参数设置.Controls.Clear(); pnl参数设置.Controls.Add((Control)ParameterSetControl); ParameterSetControl.SetHalconWindow(halconFun.m_hvWindowHandle); }
public void Init(string itemName) { TestItem testItem = MyRun.model.testItems.Find(x => x.Name == itemName); TestItemStep.GetParameterSettingControl(testItem.Type, out ParameterSetControl); txt检测项名称.Text = itemName; pnl参数设置.Controls.Clear(); pnl参数设置.Controls.Add((Control)ParameterSetControl); ParameterSetControl.SetHalconWindow(halconFun.m_hvWindowHandle); ParameterSetControl.Initial(testItem.Parameters); MyRun.nowModel.CamName = testItem.CamName; MyRun.nowModel.MatchName = testItem.MatchName; RelateCam(); RelateMatch(); }