Cognex Insight Set: комментарий не сохраняется - PullRequest
0 голосов
/ 28 мая 2020

У меня есть задание, которое хранит расположение ячеек в виде комментариев в определенных ячейках, но я сталкиваюсь с ситуацией, когда метод CvsInsight :: SetComment не сохраняется.

Я показываю форму как диалоговое окно, в котором пользователь может изменить местоположения ячеек, которые хранятся в ячейках комментариев, и когда пользователь нажимает кнопку сохранения, я создаю новый экземпляр настраиваемого класса, устанавливая свойства для новых местоположений ячеек (установленных пользователем) , установив DialogResult как OK, а затем закрыв форму. Затем в форме, в которой я вызвал ShowDialog, я вызываю метод SetComment для каждого свойства в настраиваемом классе в соответствующей ячейке.

Это то, что я делаю с помощью кнопки «Сохранить» в диалоговом окне: *

И это то, что я делаю в форме, которая открывает диалоговое окно:

Private Sub Settings_Click(sender As Object, e As EventArgs) Handles Settings.Click
    Using cameraSettingsDialog As frmCameraSetting = New frmCameraSetting(InsightDisplay.InSight)
        With cameraSettingsDialog
            If (.ShowDialog = DialogResult.OK) Then
                InsightDisplay.InSight.SetComment(New CvsCellLocation(_focusCell), New CvsCellComment(.CameraSettings.FocusCell))
                InsightDisplay.InSight.SetComment(New CvsCellLocation(_passCell), New CvsCellComment(.CameraSettings.PassCell))
                InsightDisplay.InSight.SetComment(New CvsCellLocation(_failCell), New CvsCellComment(.CameraSettings.FailCell))
                InsightDisplay.InSight.SetComment(New CvsCellLocation(_totalCell), New CvsCellComment(.CameraSettings.TotalCell))
                InsightDisplay.InSight.SetComment(New CvsCellLocation(_resultCell), New CvsCellComment(.CameraSettings.ResultsCell))
                InsightDisplay.InSight.SetComment(New CvsCellLocation(_resetCell), New CvsCellComment(.CameraSettings.ResetCell))

                GetSettingCells()
            End If
        End With
    End Using
End Sub

Что происходит, так это то, что код выполняется без выдачи исключений, но комментарий не установлен. Расстраивает то, что я не могу отлаживать, потому что Insight CvsInsightDisplay получает значение NULL каждый раз, когда я пытаюсь получить доступ к результатам в середине установки комментария. Однако я могу убедиться, что свойства CameraSettings соответствуют моим ожиданиям, потому что, если я настрою Console.WriteLine для печати различных свойств, они будут правильными.

Просматривая SDK, я не могу найдите любую документацию о том, почему он не устанавливает значение без исключения исключения.

1 Ответ

0 голосов
/ 28 мая 2020

Для тех из вас, кто сталкивается с той же проблемой, проблема решается в связи с тем, что я пытался установить ячейку, которая превышает максимальную строку в задании. Чтобы решить эту проблему, мне пришлось изменить ячейки, в которых я устанавливал комментарии, на ячейки с более низким индексом строки. *

...