浏览代码

修改目录错误,完善右键菜单

JonYang 1 月之前
父节点
当前提交
09dcedb9fc

+ 68 - 204
View/die-bonder-ui/OriginalWnd/DbTreeViewManager.cpp

@@ -2094,7 +2094,7 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                 QString fieldName           = QString::fromStdString(control.strName);
                 QString fieldDescribe       = QString::fromStdString(control.strDescribe);
                 //QString fieldDescribe_Eng = QString::fromStdString(control.strDescribe_Eng);
-                QString fieldDescribe_Eng   = "111";
+                QString fieldDescribe_Eng   = "no Eng";
                 int fieldUserGrade          = control.iUserGrade;
                 QString fieldType           = QString::fromStdString(control.strType);
                 QString fieldValue          = QString::fromStdString(control.strValue);
@@ -2401,33 +2401,16 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                             }
                             });
 
-                        QPushButton* btnDefault = new QPushButton(QStringLiteral("默认"));
-                        btnDefault->setFixedSize(60, 28);
-                        btnDefault->setProperty("type", "default");
-                        /*btnDefault->setStyleSheet(R"(
-                            QPushButton {
-                                background: #FFFFFF;
-                                border: 1px solid #BABBDC;
-                                border-radius: 5px;
-                            }
-                            QPushButton:hover {
-                                background-color: #F0F0F0;
-                            }
-                            QPushButton:disabled {
-                                background-color: #cccccc;
-                            }
-                        )");*/
-                        rightLayout->addWidget(btnDefault);
-
-                        connect(btnDefault, &QPushButton::clicked, [this, fieldDefult, lineEdit1]() {
-                            if (!fieldDefult.isEmpty()) {
+                        JIoMapPage::JCreateMenuReDefault(rightWidget, [this, fieldDefult, lineEdit1]() {
+                            if (!fieldDefult.isEmpty()) 
+                            {
                                 lineEdit1->setText(fieldDefult);
                             }
                             });
 
-                        if ((privilege &fieldUserGrade) == 1) {
+                        if ((privilege &fieldUserGrade) == 1) 
+                        {
                             lineEdit1->setEnabled(false);
-                            btnDefault->setEnabled(false);
                         }
 
                         ST_INPUT_CONT _a;
@@ -2817,33 +2800,16 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                         }
                         });
 
-                    QPushButton* btnDefault = new QPushButton(QStringLiteral("默认"));
-                    btnDefault->setFixedSize(60, 28);
-                    btnDefault->setProperty("type", "default");
-                    /*btnDefault->setStyleSheet(R"(
-                            QPushButton {
-                                background: #FFFFFF;
-                                border: 1px solid #BABBDC;
-                                border-radius: 5px;
-                            }
-                            QPushButton:hover {
-                                background-color: #F0F0F0;
-                            }
-                            QPushButton:disabled {
-                                background-color: #cccccc;
-                            }
-                        )");*/
-                    rightLayout->addWidget(btnDefault);
-
-                    connect(btnDefault, &QPushButton::clicked, [this, fieldDefult, timeEdit]() {
-                        if (!fieldDefult.isEmpty()) {
+                    JIoMapPage::JCreateMenuReDefault(rightWidget, [this, fieldDefult, timeEdit]() {
+                        if (!fieldDefult.isEmpty())
+                        {
                             timeEdit->setTime(QTime::fromString(fieldDefult, "HH:mm:ss"));
                         }
                         });
 
-                    if ((privilege &fieldUserGrade) == 1) {
+                    if ((privilege &fieldUserGrade) == 1)
+                    {
                         timeEdit->setEnabled(false);
-                        btnDefault->setEnabled(false);
                     }
 
                     ST_TIME_CONT _a;
@@ -2886,14 +2852,19 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                     if (fieldValue == "")
                     {
                         switchValue = fieldValue.toLower();
-                    } else
+                    } 
+                    else
                     {
                         switchValue = fieldValue.toLower();
                     }
                     if (switchValue == "on")
+                    {
                         switchBox->setChecked(true);
+                    }
                     else
+                    {
                         switchBox->setChecked(false);
+                    }
                     QLabel* switchLabel = new QLabel(switchBox->isChecked() ? tr("Open","开") :tr("Close","关"));
                     switchLabel->setAlignment(Qt::AlignVCenter | Qt::AlignLeft);
                     //switchLabel->setStyleSheet("font-size: 14px;");
@@ -2947,40 +2918,26 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                     rightLayout->addWidget(switchContainer);
                     createdWidget = switchBox;
 
-                    QPushButton* btnDefault = new QPushButton(QStringLiteral("默认"));
-                    btnDefault->setFixedSize(60, 28);
-                    btnDefault->setProperty("type", "default");
-                    /*btnDefault->setStyleSheet(R"(
-                            QPushButton {
-                                background: #FFFFFF;
-                                border: 1px solid #BABBDC;
-                                border-radius: 5px;
-                            }
-                            QPushButton:hover {
-                                background-color: #F0F0F0;
-                            }
-                            QPushButton:disabled {
-                                background-color: #cccccc;
-                            }
-                        )");*/
-                    rightLayout->addWidget(btnDefault);
-
-                    connect(btnDefault, &QPushButton::clicked, [this, fieldDefult, switchBox, switchLabel]() {
-                        if (!fieldDefult.isEmpty()) {
-                            if (fieldDefult == "on") {
+                    JIoMapPage::JCreateMenuReDefault(rightWidget, [this, fieldDefult, switchBox, switchLabel]() 
+                        {
+                        if (!fieldDefult.isEmpty()) 
+                        {
+                            if (fieldDefult == "on") 
+                            {
                                 switchBox->setChecked(true);
                                 switchLabel->setText(tr("Open", "开"));
                             }
-                            else {
+                            else 
+                            {
                                 switchBox->setChecked(false);
                                 switchLabel->setText(tr("Close", "关"));
                             }
                         }
                         });
 
-                    if ((privilege &fieldUserGrade) == 1) {
+                    if ((privilege &fieldUserGrade) == 1) 
+                    {
                         switchBox->setEnabled(false);
-                        btnDefault->setEnabled(false);
                     }
 
                     ST_SWITCH_CONT _a;
@@ -2991,19 +2948,15 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
 
                     m_veSwitchCont.push_back(_a);
                 } 
-                else if (fieldType == "combined" || fieldType == "POSITION")
+                else if (fieldType == "JLocation" || fieldType == "POSITION")//TODO: POSITION 逐渐抛弃
                 {
-
-                    // 用逗号分隔
                     QStringList parts = fieldValue.split(QRegExp("[,,]"), Qt::SkipEmptyParts);
                     QString inputText = (parts.size() >= 1 ? parts.at(0).trimmed() : QString());
-                    QString button1Text = (parts.size() >= 2 ? parts.at(1).trimmed() : QStringLiteral("获取"));
-                    QString button2Text = (parts.size() >= 3 ? parts.at(2).trimmed() : QStringLiteral("设置"));
-
                     QLineEdit* comboInput = new QLineEdit(inputText);
                     QRegularExpression regExp("^-?\\d*\\.?\\d*");  // 匹配整数/浮点数(含负数)
                     QRegularExpressionValidator* validator = new QRegularExpressionValidator(regExp, this);
                     comboInput->setValidator(validator);
+
                     QString strID = fieldTableName;
                     strID += "_";
                     strID += fieldName;
@@ -3013,17 +2966,6 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                     comboInput->setProperty("Input", strID);
                     comboInput->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
                     comboInput->setFixedHeight(28);
-                    /*comboInput->setStyleSheet(R"(
-                    QLineEdit {
-                        background: #FFFFFF;
-                        border: 1px solid #BABBDC;
-                        border-radius: 5px;
-                        padding: 2px 5px;
-                    }
-                    QLineEdit:disabled {
-                        background: #eeeeee;
-                    }
-                )");*/
                     m_fieldWidgets.append(comboInput);
 
                     QWidget* combinedWidget = new QWidget;
@@ -3031,104 +2973,14 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                     combinedLayout->setSpacing(5);
                     combinedLayout->setContentsMargins(0, 0, 0, 0);
 
-                    QPushButton* btnGet = new QPushButton(button1Text, combinedWidget);
-                    QString strIDGet = fieldTableName;
-                    strIDGet += "_";
-                    strIDGet += fieldName;
-                    strIDGet += +"_";
-                    strIDGet += fieldDescribe;
-
-                    btnGet->setProperty("Get", strIDGet);
-                    btnGet->setFixedSize(80, 28);
-                    btnGet->setProperty("type", "default");
-                    /*btnGet->setStyleSheet(R"(
-                    QPushButton {
-                        background: #FFFFFF;
-                        border: 1px solid #BABBDC;
-                        border-radius: 5px;
-                    }
-                    QPushButton:hover {
-                        background-color: #F0F0F0;
-                    }
-                    QPushButton:disabled {
-                        background-color: #cccccc;
-                    }
-                )");*/
-               connect(btnGet, &QPushButton::clicked, this, [this, comboInput, strstrModuleType, btnGet, strAxisType,fieldTableName, fieldName]()
-                   {
-                       double strNum = comboInput->text().toDouble();
-                       //qDebug() << "AAA:" << strstrModuleType << strAxisType <<"   " << fieldTableName << fieldName;
-                       //
-                       if (m_pTreeCViewInterface)
-                       {
-                           m_pTreeCViewInterface->GetViewMotion()->GetAxisPosition(strstrModuleType.toStdString(),
-                               strAxisType.toStdString(), strNum);
-                       }
-                       
-                       comboInput->text() = strNum;
-                       //QPushButton* senderBtn = qobject_cast<QPushButton*>(sender());
-                       //if (senderBtn) {
-                       //    QString strOnclick = senderBtn->property("Get").toString();
-                       //    qDebug() << "Clicked ID:" << strOnclick;
-                       //}
-                       // JMessageTip::Message_question(m_veCombinedCont[0].pLineC->text());
-                   });
-
-
-                    m_fieldWidgets.append(btnGet);
-
-                    QPushButton* btnSet = new QPushButton(button2Text, combinedWidget);
-                    QString strIDSet = fieldTableName;
-                    strIDSet += "_";
-                    strIDSet += fieldName;
-                    strIDSet += +"_";
-                    strIDSet += fieldDescribe;
-
-                    btnSet->setProperty("set", strIDSet);
-
-                    btnSet->setFixedSize(80, 28);
-                    btnSet->setProperty("type", "default");
-                    /*btnSet->setStyleSheet(R"(
-                    QPushButton {
-                        background: #FFFFFF;
-                        border: 1px solid #BABBDC;
-                        border-radius: 5px;
-                    }
-                    QPushButton:hover {
-                        background-color: #F0F0F0;
-                    }
-                    QPushButton:disabled {
-                        background-color: #cccccc;
-                    }
-                )");*/
-
-                    connect(btnSet, &QPushButton::clicked, this, [this, comboInput, strstrModuleType, btnGet, strAxisType, fieldTableName, fieldName]()
-                        {
-                            QPushButton* senderBtn = qobject_cast<QPushButton*>(sender());
-                            if (senderBtn) {
-                                QString strOnclick = senderBtn->property("set").toString();
-                                qDebug() << "btnSet ID:" << strOnclick;
-                            }
-                            double strNum = comboInput->text().toDouble();
-                            if (m_pTreeCViewInterface)
-                            {
-                                m_pTreeCViewInterface->GetViewMotion()->ModuleMoveTo(strstrModuleType.toStdString(),
-                                    strAxisType.toStdString(), strNum);
-                            }
-                            //JMessageTip::Message_question(m_veCombinedCont[0].pLineC->text());
-                        });
-                    m_fieldWidgets.append(btnSet);
-
                     combinedLayout->addWidget(comboInput);
-                    combinedLayout->addWidget(btnGet);
-                    combinedLayout->addWidget(btnSet);
                     combinedLayout->addStretch();
                     rightLayout->addWidget(combinedWidget);
 
                     // 压入内存
                     ST_COMBINED_CONT _a;
-                    _a.pGetBut = btnGet;
-                    _a.pSetBut = btnSet;
+                    //_a.pGetBut = btnGet;
+                   // _a.pSetBut = btnSet;
                     _a.pLineC = comboInput;
                     _a.strConfigurationsName = fieldTableName;
                     _a.strfieldName = fieldName;
@@ -3144,7 +2996,8 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                         });
 
                     connect(this, &DbTreeViewManager::saveClicked, [this, fieldTableName, fieldName, pFieldDescribeLabel]() {
-                        if (modifiedLabels.contains(pFieldDescribeLabel)) {
+                        if (modifiedLabels.contains(pFieldDescribeLabel))
+                        {
                             m_sqlOper->updateControlData(fieldTableName, fieldName, pFieldDescribeLabel->property("value").toString());
                             pFieldDescribeLabel->setDisabled(false);
                             //label->setStyleSheet("color: black;");
@@ -3152,35 +3005,49 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
                         }
                         });
 
-                    QPushButton* btnDefault = new QPushButton(QStringLiteral("默认"));
-                    btnDefault->setFixedSize(60, 28);
-                    btnDefault->setProperty("type", "default");
-                    /*btnDefault->setStyleSheet(R"(
-                            QPushButton {
-                                background: #FFFFFF;
-                                border: 1px solid #BABBDC;
-                                border-radius: 5px;
+
+                    JIoMapPage::JCreateMenuVarious(rightWidget, [this, comboInput, strstrModuleType, strAxisType, fieldTableName, fieldName]()
+                        {
+                            double strNum = comboInput->text().toDouble();
+                            if (m_pTreeCViewInterface)
+                            {
+                                m_pTreeCViewInterface->GetViewMotion()->GetAxisPosition(strstrModuleType.toStdString(),
+                                    strAxisType.toStdString(), strNum);
                             }
-                            QPushButton:hover {
-                                background-color: #F0F0F0;
+
+                            comboInput->text() = strNum;
+                            //QPushButton* senderBtn = qobject_cast<QPushButton*>(sender());
+                            //if (senderBtn) {
+                            //    QString strOnclick = senderBtn->property("Get").toString();
+                            //    qDebug() << "Clicked ID:" << strOnclick;
+                            //}
+                            // JMessageTip::Message_question(m_veCombinedCont[0].pLineC->text());
+                        }, [this, comboInput, strstrModuleType, strAxisType, fieldTableName, fieldName]()
+                        {
+                            QPushButton* senderBtn = qobject_cast<QPushButton*>(sender());
+                            if (senderBtn) 
+                            {
+                                QString strOnclick = senderBtn->property("set").toString();
                             }
-                            QPushButton:disabled {
-                                background-color: #cccccc;
+                            double strNum = comboInput->text().toDouble();
+                            if (m_pTreeCViewInterface)
+                            {
+                                m_pTreeCViewInterface->GetViewMotion()->ModuleMoveTo(strstrModuleType.toStdString(),
+                                    strAxisType.toStdString(), strNum);
                             }
-                        )");*/
-                    rightLayout->addWidget(btnDefault);
-
-                    connect(btnDefault, &QPushButton::clicked, [this, fieldDefult, comboInput]() {
-                        if (!fieldDefult.isEmpty()) {
+                            //JMessageTip::Message_question(m_veCombinedCont[0].pLineC->text());
+                        }, [this, fieldDefult, comboInput]()
+                        {
+                        if (!fieldDefult.isEmpty()) 
+                        {
                             comboInput->setText(fieldDefult);
                         }
                         });
 
-                    if ((privilege &fieldUserGrade) == 1) {
+
+                    if ((privilege &fieldUserGrade) == 1)
+                    {
                         comboInput->setEnabled(false);
-                        btnSet->setEnabled(false);
-                        btnGet->setEnabled(false);
-                        btnDefault->setEnabled(false);
                     }
 
                 } 
@@ -3222,15 +3089,12 @@ void DbTreeViewManager::displayThirdLevelFields(const QList<ST_TABLE_CONTROL_DAT
 
     m_thirdLevelFieldWnd->show();
 
-
     // 显示按钮
     displayThirdLevelButtons(buttonControls);
     //loadButtonConfigForThirdLevel(data);
-
 }
 
 
-
 void DbTreeViewManager::updateParentCheckState(QStandardItem *item)
 {
     if (!item)

+ 24 - 0
View/die-bonder-ui/OriginalWnd/TreeViewManager/JIoMapPage.h

@@ -44,6 +44,30 @@ public:
             });
     }
 
+    /**获取,设置,默认值
+    * 多种样式菜单
+     */
+    template <typename Func1, typename Func2, typename Func3>
+    static void JCreateMenuVarious(QWidget* pWidget, Func1 TGet, Func2 TSetUp, Func3 TDef)
+    {
+        pWidget->setContextMenuPolicy(Qt::CustomContextMenu);
+        connect(pWidget, &QWidget::customContextMenuRequested, [=](const QPoint& pos)
+            {
+                QMenu menu;
+                QAction* pGet = menu.addAction(tr("Get", "获取"));
+                connect(pGet, &QAction::triggered, TGet);
+
+                QAction* pSetUp = menu.addAction(tr("Set up", "设置"));
+                connect(pSetUp, &QAction::triggered, TSetUp);
+
+                QAction* pDefValUpAct = menu.addAction(tr("default value", "默认值"));
+                connect(pDefValUpAct, &QAction::triggered, TDef);
+                menu.exec(pWidget->mapToGlobal(pos));
+            });
+    }
+
+
+
     /**创建第一行名称
      */
     static QLabel* JCreateName0(const QString& fieldDescribe, const QString& fieldDescribe_Eng, int nlanguage);

+ 0 - 2
View/die-bonder-ui/SBTdie-bonder-ui.vcxproj.filters

@@ -437,7 +437,6 @@
     <QtMoc Include="OriginalWnd\TreeViewManager\JCustomLabelControls.h">
       <Filter>Header Files\OriginalWnd\TreeViewManager</Filter>
     </QtMoc>
-  </ItemGroup>
     <QtMoc Include="Src\WaferProgramPage.h">
       <Filter>Source Files\Src</Filter>
     </QtMoc>
@@ -820,7 +819,6 @@
     <None Include="dark.qss" />
     <None Include="dark.qss" />
     <None Include="dark.qss" />
-    <None Include="dark.qss" />
     <None Include="dark.qss">
       <Filter>Resource Files</Filter>
     </None>

+ 460 - 53
View/die-bonder-ui/Src/Res/Translate/SBT_en.ts

@@ -248,6 +248,14 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>BondMatrixProgramPageClass</name>
+    <message>
+        <location filename="../../BondMatrixProgramPage.ui" line="16"/>
+        <source>BondMatrixProgramPage</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>ChartsAndCamerasWnd</name>
     <message>
@@ -375,50 +383,50 @@
 <context>
     <name>DbTreeViewManager</name>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2136"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2154"/>
         <source>Please input number</source>
         <comment>请输入数字</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2244"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2262"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2280"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2284"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2302"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2320"/>
         <source>out of range,please input again</source>
         <comment>超出设定范围,请重新输入</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2914"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2933"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2989"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2868"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2887"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2928"/>
         <source>Open</source>
         <comment>开</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2914"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2943"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2993"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2868"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2897"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2933"/>
         <source>Close</source>
         <comment>关</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4315"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4163"/>
         <source>Save</source>
         <comment>保存</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4339"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4187"/>
         <source>No components were modified!</source>
         <comment>没有任何组件被修改!</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4343"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4356"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4191"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4204"/>
         <source>Modifications detected, do you want to save?</source>
         <comment>检测到修改内容,是否保存?</comment>
         <translation type="unfinished"></translation>
@@ -506,9 +514,56 @@
 <context>
     <name>JIoMapPage</name>
     <message>
-        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="11"/>
-        <source>AxisNmae</source>
-        <comment>轴名称</comment>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="18"/>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="55"/>
+        <source>AxisNmae:</source>
+        <comment>轴名称:</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="60"/>
+        <source>Card Number Type</source>
+        <comment>卡号类型</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="64"/>
+        <source>Card Number</source>
+        <comment>卡号</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="68"/>
+        <source>Axis Test</source>
+        <comment>轴测试</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="90"/>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="57"/>
+        <source>Get</source>
+        <comment>获取</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="91"/>
+        <source>set up</source>
+        <comment>设置</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="92"/>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="108"/>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="41"/>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="63"/>
+        <source>default value</source>
+        <comment>默认值</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="60"/>
+        <source>Set up</source>
+        <comment>设置</comment>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -526,13 +581,13 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../common/JMessageTip.cpp" line="23"/>
+        <location filename="../../common/JMessageTip.cpp" line="21"/>
         <source>Currently exiting.....</source>
         <comment>��ǰ�����˳�.....</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../common/JMessageTip.cpp" line="24"/>
+        <location filename="../../common/JMessageTip.cpp" line="22"/>
         <source>The current camera initialization failed and no camera is available.</source>
         <comment>��ǰ������ʼ��ʧ�ܣ�û�п�������</comment>
         <translation type="unfinished"></translation>
@@ -665,31 +720,31 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="314"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="385"/>
         <source>Currently selected mode:</source>
         <comment>当前选中模式:</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="317"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="388"/>
         <source>Move Pos:</source>
         <comment>移动点:</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="378"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="449"/>
         <source>please input value</source>
         <comment>请输入值</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="392"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="463"/>
         <source>AxisType is Empty</source>
         <comment>AxisType 为空</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="397"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="468"/>
         <source>ModuleType is Empty</source>
         <comment>ModuleType 为空</comment>
         <translation type="unfinished"></translation>
@@ -894,12 +949,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="894"/>
+        <location filename="../../../MainWnd.cpp" line="907"/>
         <source>Confirm Close</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="895"/>
+        <location filename="../../../MainWnd.cpp" line="908"/>
         <source>Are you sure you want to close the application?</source>
         <translation type="unfinished"></translation>
     </message>
@@ -955,6 +1010,316 @@ production</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>ProgrammPage</name>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="405"/>
+        <source>Sub Matrix </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="411"/>
+        <location filename="../../ProgrammPage.cpp" line="588"/>
+        <source>Row </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="422"/>
+        <location filename="../../ProgrammPage.cpp" line="599"/>
+        <source>Cow </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="433"/>
+        <location filename="../../ProgrammPage.cpp" line="610"/>
+        <source>Left Top Pos </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="449"/>
+        <location filename="../../ProgrammPage.cpp" line="626"/>
+        <source>Right Top Pos </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="465"/>
+        <location filename="../../ProgrammPage.cpp" line="642"/>
+        <source>Right Buttom pos</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="481"/>
+        <location filename="../../ProgrammPage.cpp" line="658"/>
+        <source>No Bond Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="581"/>
+        <source>Matrix_</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>ProgrammPageClass</name>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="14"/>
+        <source>ProgrammPage</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="24"/>
+        <source>固晶点编程</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="51"/>
+        <source>Save</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="116"/>
+        <source>右上角</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="140"/>
+        <source>行数</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="147"/>
+        <source>右下角</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="164"/>
+        <source>不固晶点</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="187"/>
+        <source>左上角</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="197"/>
+        <source>列数</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="204"/>
+        <source>一维矩阵:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="256"/>
+        <source>固晶高度</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="273"/>
+        <source>取晶参数:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="280"/>
+        <source>取晶高度</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="290"/>
+        <location filename="../../ProgrammPage.ui" line="304"/>
+        <location filename="../../ProgrammPage.ui" line="324"/>
+        <location filename="../../ProgrammPage.ui" line="362"/>
+        <location filename="../../ProgrammPage.ui" line="642"/>
+        <location filename="../../ProgrammPage.ui" line="721"/>
+        <location filename="../../ProgrammPage.ui" line="761"/>
+        <source>CheckBox</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="297"/>
+        <source>取晶模板ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="317"/>
+        <location filename="../../ProgrammPage.ui" line="574"/>
+        <source>拍照延时</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="331"/>
+        <location filename="../../ProgrammPage.ui" line="714"/>
+        <source>阻塞检测</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="348"/>
+        <source>固晶点补偿Y</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="355"/>
+        <source>是否中转</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="369"/>
+        <location filename="../../ProgrammPage.ui" line="581"/>
+        <source>吹气延时</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="376"/>
+        <source>预固晶高度</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="386"/>
+        <source>取晶延时</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="393"/>
+        <source>晶粒来源</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="408"/>
+        <source>取晶头取晶</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="413"/>
+        <source>中转台取晶</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="461"/>
+        <source>固晶压力</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="474"/>
+        <source>固晶延时</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="481"/>
+        <source>上视对点模板ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="508"/>
+        <location filename="../../ProgrammPage.ui" line="741"/>
+        <source>真空延时</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="515"/>
+        <location filename="../../ProgrammPage.ui" line="707"/>
+        <source>阻塞/漏晶检测延时</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="529"/>
+        <source>中转台取晶模板ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="536"/>
+        <source>固晶点补偿角度</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="543"/>
+        <location filename="../../ProgrammPage.ui" line="731"/>
+        <source>是否寻压</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="550"/>
+        <source>固晶对点模板ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="557"/>
+        <source>取晶吸嘴号</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="567"/>
+        <source>固晶台固晶参数:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="601"/>
+        <source>固后检测模板ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="618"/>
+        <source>取晶压力</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="635"/>
+        <location filename="../../ProgrammPage.ui" line="768"/>
+        <source>漏晶检测</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="649"/>
+        <source>固前检测模板ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="656"/>
+        <source>预拾取高度</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="667"/>
+        <source>中转台放晶</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="672"/>
+        <source>固晶台固晶</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="680"/>
+        <source>固晶吸嘴号</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="691"/>
+        <source>华夫盒</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="696"/>
+        <source>晶圆台</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="754"/>
+        <source>固晶点补偿X</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="782"/>
+        <source>晶圆编程</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="792"/>
+        <source>华夫盒编程</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>QObject</name>
     <message>
@@ -976,13 +1341,13 @@ production</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../Sql/SqlOperation.cpp" line="74"/>
+        <location filename="../../Sql/SqlOperation.cpp" line="86"/>
         <source>The database file does not exist:</source>
         <comment>���ݿ��ļ�������:</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../Sql/SqlOperation.cpp" line="85"/>
+        <location filename="../../Sql/SqlOperation.cpp" line="97"/>
         <source>Database open failure:</source>
         <comment>���ݿ�����ʧ��:</comment>
         <translation type="unfinished"></translation>
@@ -1070,17 +1435,7 @@ production</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="223"/>
-        <source>&lt;&lt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="246"/>
-        <source>&gt;&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="262"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="214"/>
         <source>X</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1091,7 +1446,7 @@ production</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.cpp" line="27"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.cpp" line="28"/>
         <source>Axis:(</source>
         <comment>轴:(</comment>
         <translation type="unfinished"></translation>
@@ -1143,53 +1498,52 @@ production</source>
 <context>
     <name>WaferGraphicsView</name>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="174"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="193"/>
         <source>Hide thumbnails</source>
         <comment>隐藏缩略图</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="174"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="193"/>
         <source>Show thumbnails</source>
         <comment>显示缩略图</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="180"/>
-        <source>Send Location</source>
-        <comment>发送位置</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="188"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="207"/>
         <source>move to current location</source>
         <comment>移动到该位置</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="219"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="239"/>
         <source>set Top left point</source>
         <comment>设为左上点</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="230"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="250"/>
         <source>set bottom right point</source>
         <comment>设为右下点</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="242"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="262"/>
         <source>clear the selected area</source>
         <comment>清除选中区域</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="243"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="263"/>
         <source>set area</source>
         <comment>设置区域</comment>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="469"/>
+        <source>DieMatrix%1</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>WaffleGraphicsView</name>
@@ -1242,4 +1596,57 @@ production</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>WaffleProgramPage</name>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="64"/>
+        <location filename="../../WaffleProgramPage.cpp" line="226"/>
+        <source>Sub Matrix </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="70"/>
+        <location filename="../../WaffleProgramPage.cpp" line="233"/>
+        <source>Row </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="81"/>
+        <location filename="../../WaffleProgramPage.cpp" line="244"/>
+        <source>Cow </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="92"/>
+        <location filename="../../WaffleProgramPage.cpp" line="255"/>
+        <source>Left Top Pos </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="108"/>
+        <location filename="../../WaffleProgramPage.cpp" line="271"/>
+        <source>Right Top Pos </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="124"/>
+        <location filename="../../WaffleProgramPage.cpp" line="287"/>
+        <source>Right Buttom pos</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="140"/>
+        <location filename="../../WaffleProgramPage.cpp" line="303"/>
+        <source>No Bond Points</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>WaffleProgramPageClass</name>
+    <message>
+        <location filename="../../WaffleProgramPage.ui" line="14"/>
+        <source>WaffleProgramPage</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 </TS>

二进制
View/die-bonder-ui/Src/Res/Translate/SBT_zh_CN.qm


+ 853 - 447
View/die-bonder-ui/Src/Res/Translate/SBT_zh_CN.ts

@@ -1,1245 +1,1651 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
+<?xml version='1.0' encoding='utf-8'?>
 <TS version="2.1" language="zh_CN">
 <context>
     <name>AccountMaintenanceWnd</name>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="14"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="14" />
         <source>Account Maintenance</source>
         <extracomment>账户管理</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>账户管理</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="44"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="44" />
         <source>Add</source>
         <extracomment>添加</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>添加</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="57"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="57" />
         <source>Modify</source>
         <extracomment>修改</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>修改</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="70"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="70" />
         <source>Delete</source>
         <extracomment>删除</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>删除</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="98"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="98" />
         <source>User Accounts</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="112"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="112" />
         <source>GroupBox</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="129"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="129" />
         <source>30</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="147"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="147" />
         <source>Close account during idle time:</source>
         <extracomment>闲置期间关闭账户:</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>闲置期间关闭账户:</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="163"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.ui" line="163" />
         <source>Default is 30 minutes</source>
         <extracomment>默认为30分钟</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>默认为30分钟</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="83"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="83" />
         <source>User Name                </source>
         <comment>用户名称                </comment>
-        <translation type="unfinished"></translation>
+        <translation>用户名称                </translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="84"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="84" />
         <source>Full Name                                </source>
         <comment>全名                      </comment>
-        <translation type="unfinished"></translation>
+        <translation>全名                      </translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="85"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="85" />
         <source>Privilege</source>
         <comment>特权</comment>
-        <translation type="unfinished"></translation>
+        <translation>特权</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="103"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="103" />
         <source>Administrator</source>
         <comment>管理员</comment>
-        <translation type="unfinished"></translation>
+        <translation>管理员</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="107"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="107" />
         <source>Engineer</source>
         <comment>工程师</comment>
-        <translation type="unfinished"></translation>
+        <translation>工程师</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="111"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="111" />
         <source>Technician</source>
         <comment>技术员</comment>
-        <translation type="unfinished"></translation>
+        <translation>技术员</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="115"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="115" />
         <source>Senior Operator</source>
         <comment>高级操作员</comment>
-        <translation type="unfinished"></translation>
+        <translation>高级操作员</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="119"/>
+        <location filename="../../SystemInfoPage/PageWnd/AccountMaintenanceWnd.cpp" line="119" />
         <source>Operator</source>
         <comment>操作员</comment>
-        <translation type="unfinished"></translation>
+        <translation>操作员</translation>
     </message>
 </context>
 <context>
     <name>AddUserAccountWnd</name>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="14"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="14" />
         <source>Add or modify user name</source>
         <extracomment>添加修改用户名称</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>添加修改用户名称</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="31"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="31" />
         <source>user ID:</source>
         <extracomment>用户名称:</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>用户名称:</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="64"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="64" />
         <source>full name:</source>
         <extracomment>全名:</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>全名:</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="97"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="97" />
         <source>Confirm Password:</source>
         <extracomment>确认密码:</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>确认密码:</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="133"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="133" />
         <source>Password:</source>
         <extracomment>密码:</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>密码:</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="169"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="169" />
         <source>Finish</source>
         <extracomment>完成</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>完成</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="187"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="187" />
         <source>Cancel</source>
         <extracomment>取消</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>取消</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="205"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="205" />
         <source>Privilege</source>
         <extracomment>权限</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>权限</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="222"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="222" />
         <source>Administrator</source>
         <extracomment>管理员</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>管理员</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="240"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="240" />
         <source>Engineer</source>
         <extracomment>工程师</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>工程师</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="258"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="258" />
         <source>Senior Operator</source>
         <extracomment>高级操作员</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>高级操作员</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="276"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="276" />
         <source>Technician</source>
         <extracomment>技术员</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>技术员</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="294"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.ui" line="294" />
         <source>Operator</source>
         <extracomment>操作员</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>操作员</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.cpp" line="134"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.cpp" line="134" />
         <source>The current username already exists, please re-enter it!</source>
         <comment>当前用户名已经存在,请重新输入!</comment>
-        <translation type="unfinished"></translation>
+        <translation>当前用户名已经存在,请重新输入!</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.cpp" line="152"/>
+        <location filename="../../SystemInfoPage/PageWnd/AddUserAccountWnd.cpp" line="152" />
         <source>The passwords entered twice are inconsistent, please check</source>
         <comment>2次密码输入的不一致,请检查</comment>
-        <translation type="unfinished"></translation>
+        <translation>2次密码输入的不一致,请检查</translation>
     </message>
 </context>
 <context>
     <name>Bond</name>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/Bond.cpp" line="117"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/Bond.cpp" line="117" />
         <source>PCB%1</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/Bond.cpp" line="177"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/Bond.cpp" line="177" />
         <source>PT矩阵%1</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>BondGraphicsView</name>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="195"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="195" />
         <source>Hide thumbnails</source>
         <comment>隐藏缩略图</comment>
-        <translation type="unfinished"></translation>
+        <translation>隐藏缩略图</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="195"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="195" />
         <source>Show thumbnails</source>
         <comment>显示缩略图</comment>
-        <translation type="unfinished"></translation>
+        <translation>显示缩略图</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="200"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="200" />
         <source>Send Location</source>
         <comment>发送位置</comment>
-        <translation type="unfinished"></translation>
+        <translation>发送位置</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="213"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="213" />
         <source>move to current location</source>
         <comment>移动到该位置</comment>
-        <translation type="unfinished"></translation>
+        <translation>移动到该位置</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="232"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="232" />
         <source>clear the selected area</source>
         <comment>清除选中区域</comment>
-        <translation type="unfinished"></translation>
+        <translation>清除选中区域</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="233"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/BondGraphicsView.cpp" line="233" />
         <source>set area</source>
         <comment>设置区域</comment>
-        <translation type="unfinished"></translation>
+        <translation>设置区域</translation>
+    </message>
+</context>
+<context>
+    <name>BondMatrixProgramPageClass</name>
+    <message>
+        <location filename="../../BondMatrixProgramPage.ui" line="16" />
+        <source>BondMatrixProgramPage</source>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>ChartsAndCamerasWnd</name>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="14"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="14" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="45"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="45" />
         <source>Good(In Limit)</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="58"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="58" />
         <source>Stopper</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="71"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="71" />
         <source>Limits</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="84"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="84" />
         <source>Run Event occurred</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="97"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="97" />
         <source>Rejected</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="110"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="110" />
         <source>No data</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="123"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="123" />
         <source>Average</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="136"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="136" />
         <source>Dynamc Calibration</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="149"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="149" />
         <source>Accepted</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="162"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="162" />
         <source>Location indictor</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="175"/>
+        <location filename="../../../OriginalWnd/ChartsAndCamerasWnd.ui" line="175" />
         <source>Event occurred</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>ControlOperationPage</name>
     <message>
-        <location filename="../../RewriteControl/ControlOperationPage.ui" line="14"/>
+        <location filename="../../RewriteControl/ControlOperationPage.ui" line="14" />
         <source>Form</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/ControlOperationPage.ui" line="26"/>
+        <location filename="../../RewriteControl/ControlOperationPage.ui" line="26" />
         <source>Live</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/ControlOperationPage.ui" line="91"/>
+        <location filename="../../RewriteControl/ControlOperationPage.ui" line="91" />
         <source>100%</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/ControlOperationPage.ui" line="154"/>
+        <location filename="../../RewriteControl/ControlOperationPage.ui" line="154" />
         <source>.......</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>CustomMessageDlg</name>
     <message>
-        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="14"/>
+        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="14" />
         <source>Dialog</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="48"/>
+        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="48" />
         <source>ID:</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="58"/>
+        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="58" />
         <source>oxfffffff</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="86"/>
+        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="86" />
         <source>X</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="102"/>
+        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="102" />
         <source>Process FailuRE</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="170"/>
+        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="170" />
         <source>Close</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="183"/>
+        <location filename="../../RewriteControl/MsgDlg/CustomMessageDlg.ui" line="183" />
         <source>Retry</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>DbTreeViewManager</name>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2136"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2154" />
         <source>Please input number</source>
         <comment>请输入数字</comment>
-        <translation type="unfinished"></translation>
+        <translation>请输入数字</translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2244"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2262"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2280"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2284" />
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2302" />
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2320" />
         <source>out of range,please input again</source>
         <comment>超出设定范围,请重新输入</comment>
-        <translation type="unfinished"></translation>
+        <translation>超出设定范围,请重新输入</translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2914"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2933"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2989"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2868" />
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2887" />
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2928" />
         <source>Open</source>
         <comment>开</comment>
-        <translation type="unfinished"></translation>
+        <translation></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2914"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2943"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2993"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2868" />
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2897" />
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="2933" />
         <source>Close</source>
         <comment>关</comment>
-        <translation type="unfinished"></translation>
+        <translation></translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4315"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4163" />
         <source>Save</source>
         <comment>保存</comment>
-        <translation type="unfinished"></translation>
+        <translation>保存</translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4339"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4187" />
         <source>No components were modified!</source>
         <comment>没有任何组件被修改!</comment>
-        <translation type="unfinished"></translation>
+        <translation>没有任何组件被修改!</translation>
     </message>
     <message>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4343"/>
-        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4356"/>
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4191" />
+        <location filename="../../../OriginalWnd/DbTreeViewManager.cpp" line="4204" />
         <source>Modifications detected, do you want to save?</source>
         <comment>检测到修改内容,是否保存?</comment>
-        <translation type="unfinished"></translation>
+        <translation>检测到修改内容,是否保存?</translation>
     </message>
 </context>
 <context>
     <name>Group</name>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/Group.ui" line="14"/>
+        <location filename="../../../CameraMaterialGroupWnd/Group.ui" line="14" />
         <source>Form</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>ImageView</name>
     <message>
-        <location filename="../../../ImageView.cpp" line="133"/>
+        <location filename="../../../ImageView.cpp" line="133" />
         <source>test ruler</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="190"/>
+        <location filename="../../../ImageView.cpp" line="190" />
         <source>save picture</source>
         <comment>保存图片</comment>
-        <translation type="unfinished"></translation>
+        <translation>保存图片</translation>
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="191"/>
+        <location filename="../../../ImageView.cpp" line="191" />
         <source>clear drawing</source>
         <comment>清除画笔</comment>
-        <translation type="unfinished"></translation>
+        <translation>清除画笔</translation>
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="192"/>
+        <location filename="../../../ImageView.cpp" line="192" />
         <source>clear selected rulers</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="303"/>
+        <location filename="../../../ImageView.cpp" line="303" />
         <source>save picture</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="305"/>
+        <location filename="../../../ImageView.cpp" line="305" />
         <source>PNG  (*.png);;JPEG  (*.jpg);; (*)</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="313"/>
+        <location filename="../../../ImageView.cpp" line="313" />
         <source>save failed</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="313"/>
+        <location filename="../../../ImageView.cpp" line="313" />
         <source>The picture cannot be saved to the specified path</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="316"/>
+        <location filename="../../../ImageView.cpp" line="316" />
         <source>save sucessful</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../ImageView.cpp" line="316"/>
+        <location filename="../../../ImageView.cpp" line="316" />
         <source>The picture has been successfully saved to:</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>ImageWidget</name>
     <message>
-        <location filename="../../../ImageWidget.ui" line="14"/>
+        <location filename="../../../ImageWidget.ui" line="14" />
         <source>Form</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>ImageWidget_nodrag</name>
     <message>
-        <location filename="../../../ImageWidget_nodrag.ui" line="14"/>
+        <location filename="../../../ImageWidget_nodrag.ui" line="14" />
         <source>Form</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>JIoMapPage</name>
     <message>
-        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="11"/>
-        <source>AxisNmae</source>
-        <comment>轴名称</comment>
-        <translation type="unfinished"></translation>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="18" />
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="55" />
+        <source>AxisNmae:</source>
+        <comment>轴名称:</comment>
+        <translation>轴名称:</translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="60" />
+        <source>Card Number Type</source>
+        <comment>卡号类型</comment>
+        <translation>卡号类型</translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="64" />
+        <source>Card Number</source>
+        <comment>卡号</comment>
+        <translation>卡号</translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="68" />
+        <source>Axis Test</source>
+        <comment>轴测试</comment>
+        <translation>轴测试</translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="90" />
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="57" />
+        <source>Get</source>
+        <comment>获取</comment>
+        <translation>获取</translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="91" />
+        <source>set up</source>
+        <comment>设置</comment>
+        <translation>设置</translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="92" />
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.cpp" line="108" />
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="41" />
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="63" />
+        <source>default value</source>
+        <comment>默认值</comment>
+        <translation>默认值</translation>
+    </message>
+    <message>
+        <location filename="../../../OriginalWnd/TreeViewManager/JIoMapPage.h" line="60" />
+        <source>Set up</source>
+        <comment>设置</comment>
+        <translation>设置</translation>
     </message>
 </context>
 <context>
     <name>JMessageTip</name>
     <message>
-        <location filename="../../common/JMessageTip.cpp" line="11"/>
+        <location filename="../../common/JMessageTip.cpp" line="11" />
         <source>hint</source>
         <comment>��ʾ</comment>
-        <translation type="unfinished"></translation>
+        <translation>��ʾ</translation>
     </message>
     <message>
-        <location filename="../../common/JMessageTip.cpp" line="16"/>
+        <location filename="../../common/JMessageTip.cpp" line="16" />
         <source>error</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../common/JMessageTip.cpp" line="23"/>
+        <location filename="../../common/JMessageTip.cpp" line="21" />
         <source>Currently exiting.....</source>
         <comment>��ǰ�����˳�.....</comment>
-        <translation type="unfinished"></translation>
+        <translation>��ǰ�����˳�.....</translation>
     </message>
     <message>
-        <location filename="../../common/JMessageTip.cpp" line="24"/>
+        <location filename="../../common/JMessageTip.cpp" line="22" />
         <source>The current camera initialization failed and no camera is available.</source>
         <comment>��ǰ������ʼ��ʧ�ܣ�û�п�������</comment>
-        <translation type="unfinished"></translation>
+        <translation>��ǰ������ʼ��ʧ�ܣ�û�п�������</translation>
     </message>
 </context>
 <context>
     <name>LanguageSwitchWnd</name>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="14"/>
+        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="14" />
         <source>Dialog</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="38"/>
+        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="38" />
         <source>Language:</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="51"/>
+        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="51" />
         <source>English</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="70"/>
+        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="70" />
         <source>Chinese</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="102"/>
+        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="102" />
         <source>Theme:</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="115"/>
+        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="115" />
         <source>Light</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="134"/>
+        <location filename="../../SystemInfoPage/PageWnd/LanguageSwitchWnd.ui" line="134" />
         <source>Dark</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>LightJoystickSwitchPage</name>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="14"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="14" />
         <source>Form</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="30"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="30" />
         <source>GreenLight</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="73"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="73" />
         <source>22</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="150"/>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="227"/>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="520"/>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="576"/>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="632"/>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="688"/>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="744"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="150" />
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="227" />
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="520" />
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="576" />
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="632" />
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="688" />
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="744" />
         <source>0</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="304"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="304" />
         <source>11</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="346"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="346" />
         <source>Joystick</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="370"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="370" />
         <source>←</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="383"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="383" />
         <source>→</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="396"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="396" />
         <source>↓</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="409"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="409" />
         <source>↑</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="451"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="451" />
         <source>module:</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="501"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="501" />
         <source>FORCE</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="557"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="557" />
         <source>X</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="613"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="613" />
         <source>Y</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="669"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="669" />
         <source>z</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="725"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.ui" line="725" />
         <source>R</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="314"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="385" />
         <source>Currently selected mode:</source>
         <comment>当前选中模式:</comment>
-        <translation type="unfinished"></translation>
+        <translation>当前选中模式:</translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="317"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="388" />
         <source>Move Pos:</source>
         <comment>移动点:</comment>
-        <translation type="unfinished"></translation>
+        <translation>移动点:</translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="378"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="449" />
         <source>please input value</source>
         <comment>请输入值</comment>
-        <translation type="unfinished"></translation>
+        <translation>请输入值</translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="392"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="463" />
         <source>AxisType is Empty</source>
         <comment>AxisType 为空</comment>
-        <translation type="unfinished"></translation>
+        <translation>AxisType 为空</translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="397"/>
+        <location filename="../../RewriteControl/LightJoystickSwitchPage.cpp" line="468" />
         <source>ModuleType is Empty</source>
         <comment>ModuleType 为空</comment>
-        <translation type="unfinished"></translation>
+        <translation>ModuleType 为空</translation>
     </message>
 </context>
 <context>
     <name>Login</name>
     <message>
-        <location filename="../../../Login.ui" line="14"/>
+        <location filename="../../../Login.ui" line="14" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../Login.ui" line="41"/>
-        <location filename="../../../Login.ui" line="59"/>
+        <location filename="../../../Login.ui" line="41" />
+        <location filename="../../../Login.ui" line="59" />
         <source>admin</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../Login.ui" line="75"/>
+        <location filename="../../../Login.ui" line="75" />
         <source>Sing in</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../Login.ui" line="153"/>
+        <location filename="../../../Login.ui" line="153" />
         <source>Exit</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../Login.cpp" line="32"/>
+        <location filename="../../../Login.cpp" line="32" />
         <source>Please enter the account number</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../Login.cpp" line="33"/>
+        <location filename="../../../Login.cpp" line="33" />
         <source>Please enter your password</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../Login.cpp" line="76"/>
+        <location filename="../../../Login.cpp" line="76" />
         <source>Please enter your password</source>
         <comment>请输入密码</comment>
-        <translation type="unfinished"></translation>
+        <translation>请输入密码</translation>
     </message>
     <message>
-        <location filename="../../../Login.cpp" line="81"/>
+        <location filename="../../../Login.cpp" line="81" />
         <source>Please enter your username</source>
         <comment>请输入用户名称</comment>
-        <translation type="unfinished"></translation>
+        <translation>请输入用户名称</translation>
     </message>
 </context>
 <context>
     <name>MainAndSecondaryCamerasWnd</name>
     <message>
-        <location filename="../../../OriginalWnd/MainAndSecondaryCamerasWnd.ui" line="14"/>
+        <location filename="../../../OriginalWnd/MainAndSecondaryCamerasWnd.ui" line="14" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>MainWnd</name>
     <message>
-        <location filename="../../../MainWnd.ui" line="14"/>
+        <location filename="../../../MainWnd.ui" line="14" />
         <source>MainWnd</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="65"/>
+        <location filename="../../../MainWnd.ui" line="65" />
         <source>Home</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="161"/>
+        <location filename="../../../MainWnd.ui" line="161" />
         <source>Prod. Assist</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="212"/>
+        <location filename="../../../MainWnd.ui" line="212" />
         <source>Programme</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="263"/>
+        <location filename="../../../MainWnd.ui" line="263" />
         <source>Message</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="314"/>
+        <location filename="../../../MainWnd.ui" line="314" />
         <source>Calibration</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="365"/>
+        <location filename="../../../MainWnd.ui" line="365" />
         <source>Module Config.</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="416"/>
+        <location filename="../../../MainWnd.ui" line="416" />
         <source>Diagnosis</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="467"/>
+        <location filename="../../../MainWnd.ui" line="467" />
         <source>System Info.</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="518"/>
+        <location filename="../../../MainWnd.ui" line="518" />
         <source>Help</source>
         <extracomment>焊接</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>焊接</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.ui" line="549"/>
+        <location filename="../../../MainWnd.ui" line="549" />
         <source>CLOSE</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="73"/>
+        <location filename="../../../MainWnd.cpp" line="73" />
         <source>Settings</source>
         <comment>设置</comment>
-        <translation type="unfinished"></translation>
+        <translation>设置</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="79"/>
+        <location filename="../../../MainWnd.cpp" line="79" />
         <source>Language:</source>
         <comment>语言:</comment>
-        <translation type="unfinished"></translation>
+        <translation>语言:</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="80"/>
+        <location filename="../../../MainWnd.cpp" line="80" />
         <source>English</source>
         <comment>英语</comment>
-        <translation type="unfinished"></translation>
+        <translation>英语</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="81"/>
+        <location filename="../../../MainWnd.cpp" line="81" />
         <source>Chinese</source>
         <comment>中文</comment>
-        <translation type="unfinished"></translation>
+        <translation>中文</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="93"/>
+        <location filename="../../../MainWnd.cpp" line="93" />
         <source>Theme:</source>
         <comment>主题</comment>
-        <translation type="unfinished"></translation>
+        <translation>主题</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="94"/>
+        <location filename="../../../MainWnd.cpp" line="94" />
         <source>Light</source>
         <comment>亮色</comment>
-        <translation type="unfinished"></translation>
+        <translation>亮色</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="95"/>
+        <location filename="../../../MainWnd.cpp" line="95" />
         <source>Dark</source>
         <comment>暗色</comment>
-        <translation type="unfinished"></translation>
+        <translation>暗色</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="123"/>
+        <location filename="../../../MainWnd.cpp" line="123" />
         <source>language</source>
         <comment>语言</comment>
-        <translation type="unfinished"></translation>
+        <translation>语言</translation>
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="124"/>
+        <location filename="../../../MainWnd.cpp" line="124" />
         <source>英语</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="125"/>
+        <location filename="../../../MainWnd.cpp" line="125" />
         <source>中文</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="126"/>
+        <location filename="../../../MainWnd.cpp" line="126" />
         <source>主题</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="127"/>
+        <location filename="../../../MainWnd.cpp" line="127" />
         <source>浅色</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="128"/>
+        <location filename="../../../MainWnd.cpp" line="128" />
         <source>深色</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="129"/>
+        <location filename="../../../MainWnd.cpp" line="129" />
         <source>设置</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="894"/>
+        <location filename="../../../MainWnd.cpp" line="907" />
         <source>Confirm Close</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../MainWnd.cpp" line="895"/>
+        <location filename="../../../MainWnd.cpp" line="908" />
         <source>Are you sure you want to close the application?</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>OriginalWnd</name>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="14"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="14" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="62"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="62" />
         <source>Stop
 production</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="97"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="97" />
         <source>Start of
 production</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="226"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="226" />
         <source>1</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="252"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="252" />
         <source>name001</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="268"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="268" />
         <source>Registration number 001</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="281"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="281" />
         <source>Calibration</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="297"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.ui" line="297" />
         <source>xxxProduct lot number</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../../OriginalWnd/OriginalWnd.cpp" line="134"/>
+        <location filename="../../../OriginalWnd/OriginalWnd.cpp" line="134" />
         <source>SBT_QQ</source>
         <comment>SBT_QQ</comment>
-        <translation type="unfinished"></translation>
+        <translation>SBT_QQ</translation>
+    </message>
+</context>
+<context>
+    <name>ProgrammPage</name>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="405" />
+        <source>Sub Matrix </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="411" />
+        <location filename="../../ProgrammPage.cpp" line="588" />
+        <source>Row </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="422" />
+        <location filename="../../ProgrammPage.cpp" line="599" />
+        <source>Cow </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="433" />
+        <location filename="../../ProgrammPage.cpp" line="610" />
+        <source>Left Top Pos </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="449" />
+        <location filename="../../ProgrammPage.cpp" line="626" />
+        <source>Right Top Pos </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="465" />
+        <location filename="../../ProgrammPage.cpp" line="642" />
+        <source>Right Buttom pos</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="481" />
+        <location filename="../../ProgrammPage.cpp" line="658" />
+        <source>No Bond Points</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.cpp" line="581" />
+        <source>Matrix_</source>
+        <translation type="unfinished" />
+    </message>
+</context>
+<context>
+    <name>ProgrammPageClass</name>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="14" />
+        <source>ProgrammPage</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="24" />
+        <source>固晶点编程</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="51" />
+        <source>Save</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="116" />
+        <source>右上角</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="140" />
+        <source>行数</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="147" />
+        <source>右下角</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="164" />
+        <source>不固晶点</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="187" />
+        <source>左上角</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="197" />
+        <source>列数</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="204" />
+        <source>一维矩阵:</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="256" />
+        <source>固晶高度</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="273" />
+        <source>取晶参数:</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="280" />
+        <source>取晶高度</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="290" />
+        <location filename="../../ProgrammPage.ui" line="304" />
+        <location filename="../../ProgrammPage.ui" line="324" />
+        <location filename="../../ProgrammPage.ui" line="362" />
+        <location filename="../../ProgrammPage.ui" line="642" />
+        <location filename="../../ProgrammPage.ui" line="721" />
+        <location filename="../../ProgrammPage.ui" line="761" />
+        <source>CheckBox</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="297" />
+        <source>取晶模板ID</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="317" />
+        <location filename="../../ProgrammPage.ui" line="574" />
+        <source>拍照延时</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="331" />
+        <location filename="../../ProgrammPage.ui" line="714" />
+        <source>阻塞检测</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="348" />
+        <source>固晶点补偿Y</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="355" />
+        <source>是否中转</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="369" />
+        <location filename="../../ProgrammPage.ui" line="581" />
+        <source>吹气延时</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="376" />
+        <source>预固晶高度</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="386" />
+        <source>取晶延时</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="393" />
+        <source>晶粒来源</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="408" />
+        <source>取晶头取晶</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="413" />
+        <source>中转台取晶</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="461" />
+        <source>固晶压力</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="474" />
+        <source>固晶延时</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="481" />
+        <source>上视对点模板ID</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="508" />
+        <location filename="../../ProgrammPage.ui" line="741" />
+        <source>真空延时</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="515" />
+        <location filename="../../ProgrammPage.ui" line="707" />
+        <source>阻塞/漏晶检测延时</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="529" />
+        <source>中转台取晶模板ID</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="536" />
+        <source>固晶点补偿角度</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="543" />
+        <location filename="../../ProgrammPage.ui" line="731" />
+        <source>是否寻压</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="550" />
+        <source>固晶对点模板ID</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="557" />
+        <source>取晶吸嘴号</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="567" />
+        <source>固晶台固晶参数:</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="601" />
+        <source>固后检测模板ID</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="618" />
+        <source>取晶压力</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="635" />
+        <location filename="../../ProgrammPage.ui" line="768" />
+        <source>漏晶检测</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="649" />
+        <source>固前检测模板ID</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="656" />
+        <source>预拾取高度</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="667" />
+        <source>中转台放晶</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="672" />
+        <source>固晶台固晶</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="680" />
+        <source>固晶吸嘴号</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="691" />
+        <source>华夫盒</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="696" />
+        <source>晶圆台</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="754" />
+        <source>固晶点补偿X</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="782" />
+        <source>晶圆编程</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../ProgrammPage.ui" line="792" />
+        <source>华夫盒编程</source>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>QObject</name>
     <message>
-        <location filename="../../../main.cpp" line="23"/>
+        <location filename="../../../main.cpp" line="23" />
         <source>Program already running</source>
         <comment>程序已在运行!</comment>
-        <translation type="unfinished"></translation>
+        <translation>程序已在运行!</translation>
     </message>
     <message>
-        <location filename="../../../main.cpp" line="40"/>
+        <location filename="../../../main.cpp" line="40" />
         <source>Unable to share</source>
         <comment>无法共享!</comment>
-        <translation type="unfinished"></translation>
+        <translation>无法共享!</translation>
     </message>
     <message>
-        <location filename="../../Sql/SqlOperation.cpp" line="28"/>
+        <location filename="../../Sql/SqlOperation.cpp" line="28" />
         <source>SqlOperation:Initialization failed, please check</source>
         <comment>��ʼ��ʧ��,������</comment>
-        <translation type="unfinished"></translation>
+        <translation>��ʼ��ʧ��,������</translation>
     </message>
     <message>
-        <location filename="../../Sql/SqlOperation.cpp" line="74"/>
+        <location filename="../../Sql/SqlOperation.cpp" line="86" />
         <source>The database file does not exist:</source>
         <comment>���ݿ��ļ�������:</comment>
-        <translation type="unfinished"></translation>
+        <translation>���ݿ��ļ�������:</translation>
     </message>
     <message>
-        <location filename="../../Sql/SqlOperation.cpp" line="85"/>
+        <location filename="../../Sql/SqlOperation.cpp" line="97" />
         <source>Database open failure:</source>
         <comment>���ݿ�����ʧ��:</comment>
-        <translation type="unfinished"></translation>
+        <translation>���ݿ�����ʧ��:</translation>
     </message>
 </context>
 <context>
     <name>SingleCameraOperationWnd</name>
     <message>
-        <location filename="../../../OriginalWnd/SingleCameraOperationWnd.ui" line="17"/>
+        <location filename="../../../OriginalWnd/SingleCameraOperationWnd.ui" line="17" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>SpeedAdjPage</name>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="14"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="14" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="30"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="30" />
         <source>Shortcut Keyboard</source>
         <extracomment>快捷键盘</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>快捷键盘</translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="55"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="55" />
         <source>-10000</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="68"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="68" />
         <source>-1000</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="81"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="81" />
         <source>+10</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="94"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="94" />
         <source>+100</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="107"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="107" />
         <source>-100000</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="120"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="120" />
         <source>-10</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="133"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="133" />
         <source>+1000</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="146"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="146" />
         <source>+100000</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="159"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="159" />
         <source>+10000</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="172"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="172" />
         <source>-1</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="185"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="185" />
         <source>-100</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="198"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="198" />
         <source>+1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="223"/>
-        <source>&lt;&lt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="246"/>
-        <source>&gt;&gt;</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="262"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.ui" line="214" />
         <source>X</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.cpp" line="25"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.cpp" line="25" />
         <source>Mode:</source>
         <comment>模组:</comment>
-        <translation type="unfinished"></translation>
+        <translation>模组:</translation>
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjPage.cpp" line="27"/>
+        <location filename="../../RewriteControl/SpeedAdjPage.cpp" line="28" />
         <source>Axis:(</source>
         <comment>轴:(</comment>
-        <translation type="unfinished"></translation>
+        <translation>轴:(</translation>
     </message>
 </context>
 <context>
     <name>SpeedAdjWnd</name>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="14"/>
+        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="14" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="68"/>
+        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="68" />
         <source>1</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="83"/>
+        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="83" />
         <source>-</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="107"/>
+        <location filename="../../RewriteControl/SpeedAdjWnd.ui" line="107" />
         <source>+</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>SystemInfoPage</name>
     <message>
-        <location filename="../../SystemInfoPage/SystemInfoPage.ui" line="14"/>
+        <location filename="../../SystemInfoPage/SystemInfoPage.ui" line="14" />
         <source>MainWindow</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../SystemInfoPage/SystemInfoPage.cpp" line="26"/>
+        <location filename="../../SystemInfoPage/SystemInfoPage.cpp" line="26" />
         <source>Language Switch</source>
         <comment>语言切换</comment>
-        <translation type="unfinished"></translation>
+        <translation>语言切换</translation>
     </message>
     <message>
-        <location filename="../../SystemInfoPage/SystemInfoPage.cpp" line="27"/>
+        <location filename="../../SystemInfoPage/SystemInfoPage.cpp" line="27" />
         <source>Account Maintenance</source>
         <comment>账户维护</comment>
-        <translation type="unfinished"></translation>
+        <translation>账户维护</translation>
     </message>
 </context>
 <context>
     <name>WaferGraphicsView</name>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="174"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="193" />
         <source>Hide thumbnails</source>
         <comment>隐藏缩略图</comment>
-        <translation type="unfinished"></translation>
+        <translation>隐藏缩略图</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="174"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="193" />
         <source>Show thumbnails</source>
         <comment>显示缩略图</comment>
-        <translation type="unfinished"></translation>
+        <translation>显示缩略图</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="180"/>
-        <source>Send Location</source>
-        <comment>发送位置</comment>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="188"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="207" />
         <source>move to current location</source>
         <comment>移动到该位置</comment>
-        <translation type="unfinished"></translation>
+        <translation>移动到该位置</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="219"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="239" />
         <source>set Top left point</source>
         <comment>设为左上点</comment>
-        <translation type="unfinished"></translation>
+        <translation>设为左上点</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="230"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="250" />
         <source>set bottom right point</source>
         <comment>设为右下点</comment>
-        <translation type="unfinished"></translation>
+        <translation>设为右下点</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="242"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="262" />
         <source>clear the selected area</source>
         <comment>清除选中区域</comment>
-        <translation type="unfinished"></translation>
+        <translation>清除选中区域</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="243"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="263" />
         <source>set area</source>
         <comment>设置区域</comment>
-        <translation type="unfinished"></translation>
+        <translation>设置区域</translation>
+    </message>
+    <message>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaferGraphicsView.cpp" line="469" />
+        <source>DieMatrix%1</source>
+        <translation type="unfinished" />
     </message>
 </context>
 <context>
     <name>WaffleGraphicsView</name>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="170"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="170" />
         <source>Hide thumbnails</source>
         <comment>隐藏缩略图</comment>
-        <translation type="unfinished"></translation>
+        <translation>隐藏缩略图</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="170"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="170" />
         <source>Show thumbnails</source>
         <comment>显示缩略图</comment>
-        <translation type="unfinished"></translation>
+        <translation>显示缩略图</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="176"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="176" />
         <source>Send Location</source>
         <comment>发送位置</comment>
-        <translation type="unfinished"></translation>
+        <translation>发送位置</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="184"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="184" />
         <source>move to current location</source>
         <comment>移动到该位置</comment>
-        <translation type="unfinished"></translation>
+        <translation>移动到该位置</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="215"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="215" />
         <source>set Top left point</source>
         <comment>设为左上点</comment>
-        <translation type="unfinished"></translation>
+        <translation>设为左上点</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="226"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="226" />
         <source>set bottom right point</source>
         <comment>设为右下点</comment>
-        <translation type="unfinished"></translation>
+        <translation>设为右下点</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="238"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="238" />
         <source>clear the selected area</source>
         <comment>清除选中区域</comment>
-        <translation type="unfinished"></translation>
+        <translation>清除选中区域</translation>
     </message>
     <message>
-        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="239"/>
+        <location filename="../../../CameraMaterialGroupWnd/MaterialWindow/WaffleGraphicsView.cpp" line="239" />
         <source>set area</source>
         <comment>设置区域</comment>
-        <translation type="unfinished"></translation>
+        <translation>设置区域</translation>
+    </message>
+</context>
+<context>
+    <name>WaffleProgramPage</name>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="64" />
+        <location filename="../../WaffleProgramPage.cpp" line="226" />
+        <source>Sub Matrix </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="70" />
+        <location filename="../../WaffleProgramPage.cpp" line="233" />
+        <source>Row </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="81" />
+        <location filename="../../WaffleProgramPage.cpp" line="244" />
+        <source>Cow </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="92" />
+        <location filename="../../WaffleProgramPage.cpp" line="255" />
+        <source>Left Top Pos </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="108" />
+        <location filename="../../WaffleProgramPage.cpp" line="271" />
+        <source>Right Top Pos </source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="124" />
+        <location filename="../../WaffleProgramPage.cpp" line="287" />
+        <source>Right Buttom pos</source>
+        <translation type="unfinished" />
+    </message>
+    <message>
+        <location filename="../../WaffleProgramPage.cpp" line="140" />
+        <location filename="../../WaffleProgramPage.cpp" line="303" />
+        <source>No Bond Points</source>
+        <translation type="unfinished" />
+    </message>
+</context>
+<context>
+    <name>WaffleProgramPageClass</name>
+    <message>
+        <location filename="../../WaffleProgramPage.ui" line="14" />
+        <source>WaffleProgramPage</source>
+        <translation type="unfinished" />
     </message>
 </context>
-</TS>
+</TS>