{"id":3767,"date":"2020-10-14T14:35:59","date_gmt":"2020-10-14T05:35:59","guid":{"rendered":"https:\/\/tesbit.co.jp\/?p=3767"},"modified":"2020-10-21T12:34:43","modified_gmt":"2020-10-21T03:34:43","slug":"%e3%82%b5%e3%83%b3%e3%83%97%e3%83%ab%e3%82%b3%e3%83%bc%e3%83%89","status":"publish","type":"post","link":"https:\/\/tesbit.co.jp\/?p=3767","title":{"rendered":"VB.NET\u306e\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9"},"content":{"rendered":"\n<p>\u63d0\u4f9b\u3057\u3066\u3044\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306e\u30b3\u30fc\u30c9\u306f\u4ee5\u4e0b\u306e\u30b3\u30fc\u30c9\u3068\u306a\u3063\u3066\u304a\u308a\u307e\u3059\u3002<\/p>\n\n\n<pre class=\"brush: vb; title: ; notranslate\" title=\"\">\nImports System.IO.Ports\n\n\n'===========================================================\n'\n'   \u30ba\u30fc\u30e0\u30ec\u30f3\u30ba\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\n'   \u30b5\u30f3\u30d7\u30eb\u30d7\u30ed\u30b0\u30e9\u30e0\n'   2017 TESBIT co.,ltd.\n'   http:\/\/tesbit.co.jp\n'\n'===========================================================\n\nPublic Class f_zlc\n\n    Private COMSelected = False\n    Private COMPort As String = &quot;COM7&quot;\n    Private DEMO_MODE As Boolean = False\n    Private strStatus As String = &quot;&quot;\n    Private booting As Boolean = True\n    Private PosZoom As Integer = 0\n    Private PosFocus As Integer = 0\n    Private PosIris As Integer = 0\n\n    Const BAUD_RATE As Integer = 38400\n    Private sendf As Boolean = False '\u9001\u4fe1\u6e08\u307f\u30d5\u30e9\u30b0\n    Private move_af As Boolean = False 'move_a\u30d5\u30e9\u30b0(move_p\u8ffd\u52a0)\n    Private init_af As Boolean = False 'init_a\u30d5\u30e9\u30b0\n\n    Delegate Sub UpdateDelegate()\n    Delegate Sub enableDelegate()\n\n    Dim tt_val As ToolTip\n\n    Dim init_a_f As Boolean = False\n\n    '\u30d5\u30a9\u30fc\u30e0\u69cb\u7bc9\u30fb\u521d\u671f\u5316\n    Private Sub f_zlc_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load\n\n        Me.tt_val = New ToolTip(Me.components)\n\n        ''\u30dd\u30fc\u30c8\u30ea\u30b9\u30c8\u53d6\u5f97\n        Dim portList() As String\n        portList = SerialPort.GetPortNames\n\n        Dim i As Integer\n\n        '\u521d\u671f\u5316\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f\n        If System.IO.File.Exists(&quot;ZLCinit.ini&quot;) = False Then\nNoSettings:\n\n            '\u30b3\u30f3\u30dc\u30dc\u30c3\u30af\u30b9\u521d\u671f\u5316\n            Me.cb_com.Items.Add(&quot;\u672a\u8a2d\u5b9a&quot;)\n            For i = 0 To portList.Length - 1\n                Me.cb_com.Items.Add(portList(i))\n            Next\n            Me.cb_com.EndUpdate()\n            Me.cb_com.SelectedIndex = 0\n\n            '\u78ba\u8a8d\u30e1\u30c3\u30bb\u30fc\u30b8\n            MsgBox(&quot;\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002&quot; + vbCrLf + &quot;COM\u30dd\u30fc\u30c8\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002&quot;, MsgBoxStyle.OkOnly, &quot;COM\u30a8\u30e9\u30fc&quot;)\n\n            booting = False\n            Return\n        Else\n\n            '\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f\n            If Me.readInitFile() = False Then\n                GoTo NoSettings\n            End If\n\n            For i = 0 To portList.Length - 1\n                Me.cb_com.Items.Add(portList(i))\n            Next\n            Me.cb_com.EndUpdate()\n            Me.cb_com.Text = Me.COMPort\n\n            'COM\u306e\u521d\u671f\u5316\n            Try\n                With COM\n                    .PortName = Me.COMPort\n                    .Parity = Parity.None\n                    '.BaudRate = 38400\n                    .BaudRate = BAUD_RATE\n                    .DataBits = 8\n                    .StopBits = 1\n                    .Open()\n                End With\n            Catch ex As Exception\n\n                MsgBox(&quot;COM\u306e\u521d\u671f\u5316\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002&quot; + vbCrLf + ex.Message, MsgBoxStyle.OkOnly, &quot;COM\u30a8\u30e9\u30fc&quot;)\n\n                booting = False\n                Return\n            End Try\n\n            'TSZC\u3092\u30ea\u30bb\u30c3\u30c8\uff08DtrEnable = True\uff09\u3059\u308b \n            Me.COM_SEND(&quot;reset&quot;)\n\n\n            '\u30a4\u30f3\u30c1\u30f3\u30b0\u901f\u5ea6\u8a2d\u5b9a\n            Me.COM_SEND(&quot;s_incz,100&quot;)\n            Me.COM_SEND(&quot;s_incf,100&quot;)\n            Me.COM_SEND(&quot;s_inci,100&quot;)\n\n            '\u73fe\u5728\u5024\u306e\u53d6\u5f97\n            Me.COM_SEND(&quot;read_a&quot;)\n\n            booting = False\n        End If\n\n\n    End Sub\n\n    '\u7d42\u4e86\u51e6\u7406\n    Private Sub f_zlc_Disposed(sender As Object, e As System.EventArgs) Handles Me.Disposed\n\n        If Me.COM.IsOpen Then\n            Me.COM.Close()\n        End If\n\n        Me.COM.Dispose()\n\n        '\u8a2d\u5b9a\u306e\u4fdd\u5b58\n        Me.saveInitFile()\n\n\n    End Sub\n\n    'COM\u30b3\u30f3\u30dc\u30dc\u30c3\u30af\u30b9\n    Private Sub cb_com_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles cb_com.SelectedIndexChanged\n\n        If Me.booting = True Then\n            Return\n        End If\n\n\n        If Me.cb_com.SelectedText.Equals(&quot;\u672a\u8a2d\u5b9a&quot;) Then\n            Return\n        Else\n            If Me.COM.IsOpen = True Then\n                Me.COM.Close()\n            End If\n            Me.COMPort = Me.cb_com.SelectedItem.ToString\n            'COM\u306e\u521d\u671f\u5316\n            Try\n                With COM\n                    .PortName = Me.COMPort\n                    .Parity = Parity.None\n                    '.BaudRate = 9600\n                    .BaudRate = BAUD_RATE\n                    .DataBits = 8\n                    .StopBits = 1\n                    .Open()\n                End With\n            Catch ex As Exception\n\n                MsgBox(&quot;COM\u306e\u521d\u671f\u5316\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002&quot; + vbCrLf + ex.Message, MsgBoxStyle.OkOnly, &quot;COM\u30a8\u30e9\u30fc&quot;)\n\n            End Try\n\n            'TSZC\u3092\u30ea\u30bb\u30c3\u30c8\uff08DtrEnable = True\uff09\u3059\u308b \n            Me.COM_SEND(&quot;reset&quot;)\n            '\u30a4\u30f3\u30c1\u30f3\u30b0\u901f\u5ea6\u8a2d\u5b9a \n            Me.COM_SEND(&quot;s_incz,100&quot;)\n            Me.COM_SEND(&quot;s_incf,100&quot;)\n            Me.COM_SEND(&quot;s_inci,100&quot;)\n\n            '\u73fe\u5728\u5024\u306e\u53d6\u5f97\n            Me.COM_SEND(&quot;read_a&quot;)\n        End If\n\n    End Sub\n\n    '\u521d\u671f\u5316\u30d5\u30a1\u30a4\u30eb\u8aad\u307f\u8fbc\u307f\n    Private Function readInitFile() As Boolean\n\n        Dim i As Integer\n        Dim strRDT() As String\n        Dim strDT() As String\n        Try\n            strRDT = System.IO.File.ReadAllLines(&quot;ZLCinit.ini&quot;)\n\n            For i = 0 To strRDT.Length - 1\n\n                strDT = strRDT(i).Split(&quot;;&quot;)\n                Select Case strDT(0)\n                    Case &quot;COM&quot;\n                        Me.COMPort = strDT(1)\n                        Exit Select\n                End Select\n\n            Next\n\n        Catch ex As Exception\n\n            MsgBox(&quot;\u521d\u671f\u5316\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f1\u3002&quot; + vbCrLf + ex.Message, MsgBoxStyle.OkOnly, &quot;\u30d5\u30a1\u30a4\u30eb\u30a8\u30e9\u30fc&quot;)\n            Return False\n        End Try\n\n        Return True\n\n    End Function\n\n    '\u521d\u671f\u5316\u30d5\u30a1\u30a4\u30eb\u4fdd\u5b58\n    Private Function saveInitFile() As Boolean\n\n        Try\n\n            Dim str As String = System.String.Empty\n            str += &quot;COM;&quot; + Me.COMPort + vbCrLf\n\n            Dim sw As System.IO.StreamWriter\n\n            sw = New System.IO.StreamWriter(&quot;ZLCinit.ini&quot;, False, System.Text.Encoding.GetEncoding(&quot;shift_jis&quot;))\n            sw.Write(str)\n            sw.Close()\n\n        Catch ex As Exception\n\n            MsgBox(&quot;\u521d\u671f\u5316\u30d5\u30a1\u30a4\u30eb\u306e\u4fdd\u5b58\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002&quot; + vbCrLf + ex.Message, MsgBoxStyle.OkOnly, &quot;\u30d5\u30a1\u30a4\u30eb\u30a8\u30e9\u30fc&quot;)\n\n            Return False\n        End Try\n        Return True\n\n    End Function\n\n    '===========================================================\n    '\n    '   \u901a\u4fe1\u95a2\u9023\n    '   \n    '\n    '===========================================================\n    '\u30b3\u30de\u30f3\u30c9\u5b9a\u7fa9\n    Private Enum ZoomRetCMD\n        read_a = 1\n        read_z = 2\n        read_f = 3\n        read_i = 4\n        move_a = 11\n        move_z = 12\n        move_f = 13\n        move_i = 14\n        inc_zf = 20\n        inc_zr = 21\n        inc_ff = 22\n        inc_fr = 23\n        inc_if = 24\n        inc_ir = 25\n        instop = 30\n\n        init_a = 100\n        init_a_z = 101\n        init_a_f = 102\n        init_a_i = 103\n\n        err = 999\n\n        standby = 0\n    End Enum\n\n    '\u30b3\u30de\u30f3\u30c9\u5224\u5225\n    Private Function getZoommCmd(ByRef strDT As String) As ZoomRetCMD\n\n        Dim CMD As Integer = ZoomRetCMD.standby\n\n\n        If strDT.IndexOf(&quot;read_a&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.read_a\n        ElseIf strDT.IndexOf(&quot;read_z&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.read_z\n        ElseIf strDT.IndexOf(&quot;read_f&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.read_f\n        ElseIf strDT.IndexOf(&quot;read_i&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.read_i\n\n        ElseIf strDT.IndexOf(&quot;move_a&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.move_a\n        ElseIf strDT.IndexOf(&quot;move_z&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.move_z\n        ElseIf strDT.IndexOf(&quot;move_f&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.move_f\n        ElseIf strDT.IndexOf(&quot;move_i&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.move_i\n\n        ElseIf strDT.IndexOf(&quot;inc_ff&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.inc_ff\n        ElseIf strDT.IndexOf(&quot;inc_fr&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.inc_fr\n        ElseIf strDT.IndexOf(&quot;inc_zf&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.inc_zf\n        ElseIf strDT.IndexOf(&quot;inc_zr&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.inc_zr\n        ElseIf strDT.IndexOf(&quot;inc_if&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.inc_if\n        ElseIf strDT.IndexOf(&quot;inc_ir&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.inc_ir\n\n        ElseIf strDT.IndexOf(&quot;instop&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.instop\n\n        ElseIf strDT.IndexOf(&quot;init_a_done&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.init_a\n        ElseIf strDT.IndexOf(&quot;init_a_z&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.init_a_z\n        ElseIf strDT.IndexOf(&quot;init_a_f&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.init_a_f\n        ElseIf strDT.IndexOf(&quot;init_a_i&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.init_a_i\n        ElseIf strDT.IndexOf(&quot;Err&quot;) &lt;&gt; -1 Then\n            CMD = ZoomRetCMD.err\n        Else\n            CMD = ZoomRetCMD.standby\n        End If\n\n\n        Return CMD\n    End Function\n\n    '\u30b3\u30de\u30f3\u30c9\u9001\u4fe1\n    '\u540c\u671f\u901a\u4fe1\u5bfe\u5fdc \u8fd4\u4fe1\u304c\u3042\u308b\u51e6\u7406\u306b\u3064\u3044\u3066\u306f\u672c\u95a2\u6570\u3092\u901a\u3059\u3053\u3068\u3002\n    Private Function COM_SEND(ByVal strCMD As String) As Boolean\n\n        '\u9001\u4fe1\u30d5\u30e9\u30b0ON \n        sendf = True\n\n        If Me.COM.IsOpen Then\n\n            '\u767a\u884c\u3055\u308c\u305f\u30b3\u30de\u30f3\u30c9\u304c&quot;reset&quot;\u3060\u3063\u305f\u5834\u5408\n            If (strCMD = &quot;reset&quot;) Then\n                '\u30ea\u30bb\u30c3\u30c8\uff08DtrEnable = True\uff09\u3059\u308b\u3068\u300cZLC TESBIT\u30fb\u30fb\u300d\u304c\u8fd4\u4fe1\u3055\u308c\u308b\u305f\u3081\n                '\u672c\u95a2\u6570\u5185\u51e6\u7406\u5b9f\u884c() \n                Me.COM.DtrEnable = True\n            Else\n\n                '\u8907\u6570\u306e\u8fd4\u4fe1\u304c\u3042\u308b\u30b3\u30de\u30f3\u30c9\n                If strCMD.IndexOf(&quot;move_a&quot;) &lt;&gt; -1 Then move_af = True\n                If strCMD.IndexOf(&quot;move_p&quot;) &lt;&gt; -1 Then move_af = True\n                If strCMD.IndexOf(&quot;init_a&quot;) &lt;&gt; -1 Then init_af = True\n\n                'If Me.cb_delm.Checked Then \n                Me.COM.Write(strCMD + vbCrLf)\n                'Else\n                'Me.COM.Write(strCMD)\n                'End If\n\n                Me.strStatus = &quot;&gt;&quot; + strCMD + vbCrLf\n\n                '\u8868\u793a\u306e\u66f4\u65b0\n                Invoke(New UpdateDelegate(AddressOf UpdateData))\n\n            End If\n\n            Me.COM.DiscardOutBuffer()\n        End If\n\n        '\u30c7\u30fc\u30bf\u3092\u53d7\u4fe1\u3059\u308b\u307e\u3067\u5f85\u6a5f \n        Dim loopCnt As Integer = 1\n        While (sendf)\n            '\u30e1\u30c3\u30bb\u30fc\u30b8\u30ad\u30e5\u30fc\u306b\u73fe\u5728\u3042\u308bWindows\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u3059\u3079\u3066\u51e6\u7406\u3059\u308b\n            System.Windows.Forms.Application.DoEvents()\n            System.Threading.Thread.Sleep(10)\n\n            If loopCnt = 20000 Then\n                Me.strStatus = &quot;VBError:timeout&quot; + vbCrLf\n                '\u8868\u793a\u306e\u66f4\u65b0\n                Invoke(New UpdateDelegate(AddressOf UpdateData))\n                sendf = False\n                Return False\n            End If\n\n            loopCnt = loopCnt + 1\n        End While\n\n        Return True\n\n    End Function\n\n    '\u30b3\u30de\u30f3\u30c9\u53d7\u4fe1\n    '\u540c\u671f\u901a\u4fe1\u5bfe\u5fdc \u305d\u308c\u306b\u4f34\u3044\u672c\u95a2\u6570\u5185\u304b\u3089\u306eCOM_SEND\u306e\u5b9f\u884c\u3092\u7981\u6b62\u3002\n    Private Sub COM_DataReceived(sender As Object, e As System.IO.Ports.SerialDataReceivedEventArgs) Handles COM.DataReceived\n\n        If Me.COM.IsOpen = False Then\n            Return\n        End If\n\n        Try\n\n            Dim strDT As String = Me.COM.ReadLine\n\n            Me.strStatus = &quot;&lt;&quot; + strDT + vbCrLf\n            Invoke(New UpdateDelegate(AddressOf UpdateData))\n\n            '\u9001\u4fe1\u30d5\u30e9\u30b0OFF \n            If move_af Then\n                If System.Text.RegularExpressions.Regex.IsMatch(strDT, &quot;move_a.*?_done&quot;) Then\n                    'move_a(p)\u3092\u5b9f\u884c\u3057\u305f\u5834\u5408move_a(p)_done\u304c\u8fd4\u5374\u3055\u308c\u305f\u3089OFF\n                    If sendf = True Then sendf = False\n                    move_af = False\n                End If\n            ElseIf init_af Then\n                If strDT.IndexOf(&quot;init_a_done&quot;) &lt;&gt; -1 Then\n                    'init_a\u3092\u5b9f\u884c\u3057\u305f\u5834\u5408init_a done\u304c\u8fd4\u5374\u3055\u308c\u305f\u3089OFF\n                    If sendf = True Then sendf = False\n                    init_af = False\n                End If\n            Else\n                '\u4e0a\u8a18\u4ee5\u5916\u306e\u5834\u5408OFF\n                If sendf = True Then sendf = False\n            End If\n\n\n            If strDT.IndexOf(&quot;ZLC&quot;) &lt;&gt; -1 Then\n                'Me.COM_SEND(&quot;read_a&quot;)\u3000&lt;ZLC TESBIT TSZC-06b\n            End If\n\n\n            Select Case getZoommCmd(strDT)\n                Case ZoomRetCMD.standby\n                    Exit Select\n\n                Case ZoomRetCMD.read_a\n                    Dim strDTT() As String = strDT.Split(&quot;,&quot;)\n                    If strDTT.Length &lt; 3 Then\n                        Exit Select\n                    End If\n\n                    Me.PosZoom = Integer.Parse(strDTT(1))\n                    Me.PosFocus = Integer.Parse(strDTT(2))\n                    Me.PosIris = Integer.Parse(strDTT(3))\n                    Me.strStatus = &quot;&quot;\n                    Invoke(New UpdateDelegate(AddressOf UpdateData))\n                    Exit Select\n\n                Case ZoomRetCMD.move_a, _\n                     ZoomRetCMD.move_z, _\n                     ZoomRetCMD.move_f, _\n                     ZoomRetCMD.move_i\n\n                    'Me.COM_SEND(&quot;read_a&quot;) \n                    'Invoke(New enableDelegate(AddressOf enableControl))\n\n\n                    Exit Select\n                Case ZoomRetCMD.inc_zf, _\n                     ZoomRetCMD.inc_zr, _\n                     ZoomRetCMD.inc_ff, _\n                     ZoomRetCMD.inc_fr, _\n                     ZoomRetCMD.inc_if, _\n                     ZoomRetCMD.inc_ir\n\n\n                    Exit Select\n                Case ZoomRetCMD.instop\n\n                    'Me.COM_SEND(&quot;read_a&quot;) \n                    Exit Select\n\n                Case ZoomRetCMD.init_a\n                    'Me.COM_SEND(&quot;move_a,400,600,800&quot;)\n                    Exit Select\n\n                Case ZoomRetCMD.init_a_z\n\n                    Exit Select\n                Case ZoomRetCMD.init_a_f\n                    Exit Select\n                Case ZoomRetCMD.init_a_i\n\n                    Exit Select\n                Case ZoomRetCMD.err\n                    Invoke(New enableDelegate(AddressOf enableControl))\n                    Exit Select\n            End Select\n\n\n        Catch ex As Exception\n\n            Me.strStatus = ex.ToString\n            Invoke(New UpdateDelegate(AddressOf UpdateData))\n\n        End Try\n\n\n        Me.COM.DiscardInBuffer()\n\n\n    End Sub\n\n    '\u30a8\u30e9\u30fc\u53d7\u4fe1\n    Private Sub COM_ErrorReceived(sender As Object, e As System.IO.Ports.SerialErrorReceivedEventArgs) Handles COM.ErrorReceived\n\n\n\n\n    End Sub\n\n\n\n\n\n    '===========================================================\n    '\n    '   \u30dc\u30bf\u30f3\u64cd\u4f5c\n    '   \n    '\n    '===========================================================\n    '\u9001\u4fe1\u30dc\u30bf\u30f3\n    Private Sub btn_send_Click(sender As System.Object, e As System.EventArgs) Handles btn_send.Click\n\n        If Me.tx_comSend.Text = &quot;&quot; Then\n            Return\n        End If\n\n        Dim str = Me.tx_comSend.Text\n        Dim str_six = str.Substring(0, 6)\n        'Me.COM_SEND(Me.tx_comSend.Text)\n        Me.COM_SEND(str)\n\n\n        Select Case str_six\n\n            Case &quot;move_a&quot;, _\n                 &quot;move_z&quot;, _\n                 &quot;move_f&quot;, _\n                 &quot;move_i&quot;, _\n                 &quot;move_p&quot;, _\n                 &quot;init_a&quot;, _\n                 &quot;init_z&quot;, _\n                 &quot;init_f&quot;, _\n                 &quot;init_i&quot;, _\n                 &quot;instop&quot;\n\n                Me.COM_SEND(&quot;read_a&quot;)\n                Exit Select\n            Case &quot;inchsp&quot;\n                Dim arr = str.Split(&quot;,&quot;)\n                If arr(0) = 255 Then\n                    rb_z255.Checked = True\n                End If\n                Exit Select\n            Case &quot;s_incz&quot;\n                Exit Select\n            Case &quot;s_incf&quot;\n                Exit Select\n            Case &quot;s_inci&quot;\n                Exit Select\n        End Select\n\n    End Sub\n\n    'zoom\n    Private Sub btn_zoomUP_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles btn_zoomUP.MouseDown\n\n        Me.COM_SEND(&quot;inc_zr&quot;)\n\n\n    End Sub\n    Private Sub btn_zoomDW_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles btn_zoomDW.MouseDown\n\n        Me.COM_SEND(&quot;inc_zf&quot;)\n\n    End Sub\n    'focus\n    Private Sub btn_focusUP_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles btn_focusUP.MouseDown\n\n        Me.COM_SEND(&quot;inc_fr&quot;)\n\n    End Sub\n    Private Sub btn_focusDW_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles btn_focusDW.MouseDown\n\n        Me.COM_SEND(&quot;inc_ff&quot;)\n\n    End Sub\n    'Iris\n    Private Sub btn_irisUP_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles btn_irisUP.MouseDown\n\n        Me.COM_SEND(&quot;inc_ir&quot;)\n\n    End Sub\n    Private Sub btn_irisDW_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles btn_irisDW.MouseDown\n\n        Me.COM_SEND(&quot;inc_if&quot;)\n\n    End Sub\n\n    '\u30a4\u30f3\u30c1\u30f3\u30b0\u505c\u6b62\n    Private Sub btn_ZLC_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles btn_zoomUP.MouseUp, _\n                                                                                                    btn_zoomDW.MouseUp, _\n                                                                                                    btn_focusUP.MouseUp, _\n                                                                                                    btn_focusDW.MouseUp, _\n                                                                                                    btn_irisUP.MouseUp, _\n                                                                                                    btn_irisDW.MouseUp\n        Me.COM_SEND(&quot;instop&quot;)\n\n        Me.COM_SEND(&quot;read_a&quot;)\n\n    End Sub\n\n\n    '\u9001\u4fe1\u30b3\u30de\u30f3\u30c9\u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u5236\u5fa1\n    Private Sub tx_comSend_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles tx_comSend.KeyPress\n        If e.KeyChar = Chr(13) Then\n            Me.btn_send.PerformClick()\n            Me.tx_comSend.Text = &quot;&quot;\n        End If\n    End Sub\n\n    '===========================================================\n    '\n    '   \u30c8\u30e9\u30c3\u30af\u30d0\u30fc\u95a2\u9023\n    '   \n    '\n    '===========================================================\n    Dim tb_zoomDown As Boolean = False\n    Dim tb_focusDown As Boolean = False\n    Dim tb_irisDown As Boolean = False\n\n    Private Sub tb_iris_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_iris.MouseDown\n        tb_irisDown = True\n    End Sub\n\n    Private Sub tb_iris_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_iris.MouseMove\n        If Me.tb_irisDown = True Then\n            Me.tt_val.SetToolTip(Me.tb_iris, Me.tb_iris.Value.ToString)\n        End If\n    End Sub\n\n    Private Sub tb_iris_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_iris.MouseUp\n        Dim val As Integer = Me.tb_iris.Value\n        Me.disableControl() '\u79fb\u52d5\u5b8c\u4e86\u307e\u3067\u505c\u6b62\n        Me.COM_SEND(&quot;move_i,&quot; + val.ToString)\n        Me.PosIris = val\n        'Me.UpdateData() \n        Me.tb_irisDown = False\n        Me.enableControl()\n\n        Me.COM_SEND(&quot;read_a&quot;)\n    End Sub\n\n    Private Sub tb_focus_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_focus.MouseDown\n        Me.tb_focusDown = True\n    End Sub\n\n    Private Sub tb_focus_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_focus.MouseMove\n        If Me.tb_focusDown = True Then\n            Me.tt_val.SetToolTip(Me.tb_focus, Me.tb_focus.Value.ToString)\n        End If\n    End Sub\n\n    Private Sub tb_focus_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_focus.MouseUp\n        Dim val As Integer = Me.tb_focus.Value\n        Me.disableControl() '\u79fb\u52d5\u5b8c\u4e86\u307e\u3067\u505c\u6b62\n        Me.COM_SEND(&quot;move_f,&quot; + val.ToString)\n        Me.PosFocus = val\n        'Me.UpdateData() \n        Me.tb_focusDown = False\n        Me.enableControl()\n\n        Me.COM_SEND(&quot;read_a&quot;)\n    End Sub\n\n    Private Sub tb_zoom_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_zoom.MouseDown\n        Me.tb_zoomDown = True\n    End Sub\n\n    Private Sub tb_zoom_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_zoom.MouseMove\n        If Me.tb_zoomDown = True Then\n            Me.tt_val.SetToolTip(Me.tb_zoom, Me.tb_zoom.Value.ToString)\n        End If\n    End Sub\n\n    Private Sub tb_zoom_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles tb_zoom.MouseUp\n        Dim val As Integer = Me.tb_zoom.Value\n        Me.disableControl() '\u79fb\u52d5\u5b8c\u4e86\u307e\u3067\u505c\u6b62\n        Me.COM_SEND(&quot;move_z,&quot; + val.ToString)\n        Me.PosZoom = val\n        'Me.UpdateData() \n        Me.tb_zoomDown = False\n        Me.enableControl()\n\n        Me.COM_SEND(&quot;read_a&quot;)\n    End Sub\n\n    '===========================================================\n    '\n    '   \u30c6\u30ad\u30b9\u30c8\u30dc\u30c3\u30af\u30b9\u95a2\u9023\n    '   \n    '\n    '===========================================================\n    Private Sub tx_zoom_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles tx_zoom.KeyPress\n        If e.KeyChar = Chr(13) Then\n\n            Me.PosZoom = Integer.Parse(Me.tx_zoom.Text)\n            Me.COM_SEND(&quot;move_z,&quot; + Me.tx_zoom.Text)\n            Me.COM_SEND(&quot;read_a&quot;)\n\n        End If\n    End Sub\n\n    Private Sub tx_focus_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles tx_focus.KeyPress\n        If e.KeyChar = Chr(13) Then\n\n            Me.PosFocus = Integer.Parse(Me.tx_focus.Text)\n            Me.COM_SEND(&quot;move_f,&quot; + Me.tx_focus.Text)\n            Me.COM_SEND(&quot;read_a&quot;)\n\n        End If\n    End Sub\n\n    Private Sub tx_iris_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles tx_iris.KeyPress\n        If e.KeyChar = Chr(13) Then\n\n            Me.PosIris = Integer.Parse(Me.tx_iris.Text)\n            Me.COM_SEND(&quot;move_i,&quot; + Me.tx_iris.Text)\n            Me.COM_SEND(&quot;read_a&quot;)\n\n        End If\n    End Sub\n\n\n    '===========================================================\n    '\n    '   COM\u9001\u53d7\u4fe1\u90e8\u306a\u3069\u306e\u8868\u793a\u66f4\u65b0\n    '   Invoke\u3067\u4f7f\u7528\n    '\n    '===========================================================\n    Private Sub UpdateData()\n\n        Me.tx_comRes.AppendText(Me.strStatus)\n        If Me.tx_comRes.Lines.Length &gt; 100 Then\n\n            Dim str As String = Me.tx_comRes.Text\n            Dim Pos As Integer = Me.tx_comRes.Text.IndexOf(vbCrLf)\n            Me.tx_comRes.Text = Me.tx_comRes.Text.Substring(Me.tx_comRes.Text.IndexOf(vbCrLf) _\n                                   + 2, Me.tx_comRes.Text.Length - ((Me.tx_comRes.Text.IndexOf(vbCrLf) + 2)))\n        End If\n\n        Me.tx_comRes.SelectionStart = Me.tx_comRes.Text.Length\n        Me.tx_comRes.ScrollToCaret()\n\n        Me.tx_zoom.Text = Me.PosZoom.ToString\n        Me.tx_zoom.Refresh()\n        Me.tx_focus.Text = Me.PosFocus.ToString\n        Me.tx_focus.Refresh()\n        Me.tx_iris.Text = Me.PosIris.ToString\n        Me.tx_iris.Refresh()\n\n        Me.tb_zoom.Value = Me.PosZoom\n        Me.tb_focus.Value = Me.PosFocus\n        Me.tb_iris.Value = Me.PosIris\n\n    End Sub\n\n    '===========================================================\n    '\n    '   \u79fb\u52d5\u5f8c\u306e\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u306e\u52d5\u4f5c\u56de\u5fa9\n    '   Invoke\u3067\u4f7f\u7528\n    '\n    '===========================================================\n    Private Sub enableControl()\n        Me.tb_zoom.Enabled = True\n        Me.tb_focus.Enabled = True\n        Me.tb_iris.Enabled = True\n        Me.btn_zoomUP.Enabled = True\n        Me.btn_zoomDW.Enabled = True\n        Me.btn_focusUP.Enabled = True\n        Me.btn_focusDW.Enabled = True\n        Me.btn_irisUP.Enabled = True\n        Me.btn_irisDW.Enabled = True\n    End Sub\n    Private Sub disableControl()\n        Me.tb_zoom.Enabled = False\n        Me.tb_focus.Enabled = False\n        Me.tb_iris.Enabled = False\n        Me.btn_zoomUP.Enabled = False\n        Me.btn_zoomDW.Enabled = False\n        Me.btn_focusUP.Enabled = False\n        Me.btn_focusDW.Enabled = False\n        Me.btn_irisUP.Enabled = False\n        Me.btn_irisDW.Enabled = False\n    End Sub\n\n    '===========================================================\n    '\n    '   \u30b7\u30b9\u30c6\u30e0\u521d\u671f\u5316\n    '   \u521d\u56de\u901a\u96fb\u6642\u306b\u5fc5\u305a\u521d\u671f\u5316\u3092\u884c\u3063\u3066\u304f\u3060\u3055\u3044\n    '   \u672c\u6a5f\u5185\u90e8\u306b\u30dd\u30c6\u30f3\u30b7\u30e7\u30e1\u30fc\u30bf\u306e\u5024\u3092\u8a18\u9332\u3057\u307e\u3059\u3002\n    '\n    '===========================================================\n    Private Sub btn_init_Click(sender As System.Object, e As System.EventArgs) Handles btn_init.Click\n\n        If MsgBox(&quot;\u521d\u56de\u8d77\u52d5\u6642\u306e\u30dd\u30c6\u30f3\u30b7\u30e7\u30e1\u30fc\u30bf\u306e\u5024\u767b\u9332\u3092\u884c\u3044\u307e\u3059\u304b\uff1f&quot; + vbCrLf + _\n               &quot;\u203b3\u5206\u7a0b\u5ea6\u639b\u304b\u308a\u307e\u3059\u3002\u30ec\u30f3\u30ba\u3092\u5909\u66f4\u3057\u306a\u3044\u9650\u308a\u5fc5\u8981\u6709\u308a\u307e\u305b\u3093\u3002&quot; + vbCrLf + _\n               &quot;\u203b\u30ec\u30f3\u30ba\u3092\u4ea4\u63db\u3057\u305f\u3089\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002&quot;, _\n                MsgBoxStyle.YesNo, _\n                &quot;\u521d\u671f\u5316\u306e\u78ba\u8a8d&quot;) = MsgBoxResult.Yes Then\n\n            init_a_f = True\n\n            Me.COM_SEND(&quot;init_a&quot;)\n\n            rb_z100.Checked = True\n            rb_f100.Checked = True\n            rb_i100.Checked = True\n\n            Me.COM_SEND(&quot;read_a&quot;)\n\n            init_a_f = False\n        End If\n\n\n    End Sub\n\n    '===========================================================\n    '\n    '   \u30a4\u30f3\u30c1\u30f3\u30b0\u901f\u5ea6\u8a2d\u5b9a\n    '   \u30cf\u30fc\u30c9\u30a6\u30a8\u30a2\u306e\u4ed5\u69d8\u4e0afocus\u306e\u307f\u79fb\u52d5\u901f\u5ea6\u304c\u82e5\u5e72\u9045\u304f\u306a\u308a\u307e\u3059\u3002\n    '   \u305d\u306e\u305f\u3081\u3001\u521d\u671f\u5024\u3067focus\u306e\u307f\u901f\u5ea6\u3092\u901f\u304f\u3057\u3066\u3044\u307e\u3059\u3002\n    '\n    '===========================================================\n    Private Sub rb_z_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles rb_z100.CheckedChanged, _\n                                                                                            rb_z200.CheckedChanged, _\n                                                                                            rb_z255.CheckedChanged\n        If Me.booting = True Then\n            Return\n        End If\n\n        If CType(sender, RadioButton).Checked = True And init_a_f = False Then\n            Select Case CType(sender, RadioButton).Name\n                Case &quot;rb_z100&quot;\n                    Me.COM_SEND(&quot;s_incz,100&quot;)\n                    Exit Select\n                Case &quot;rb_z200&quot;\n                    Me.COM_SEND(&quot;s_incz,200&quot;)\n                    Exit Select\n                Case &quot;rb_z255&quot;\n                    Me.COM_SEND(&quot;s_incz,255&quot;)\n                    Exit Select\n            End Select\n        End If\n\n    End Sub\n    Private Sub rb_f_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles rb_f100.CheckedChanged, _\n                                                                                            rb_f200.CheckedChanged, _\n                                                                                            rb_f255.CheckedChanged\n\n        If Me.booting = True Then\n            Return\n        End If\n\n        If CType(sender, RadioButton).Checked = True And init_a_f = False Then\n            Select Case CType(sender, RadioButton).Name\n                Case &quot;rb_f100&quot;\n                    Me.COM_SEND(&quot;s_incf,100&quot;)\n                    Exit Select\n                Case &quot;rb_f200&quot;\n                    Me.COM_SEND(&quot;s_incf,200&quot;)\n                    Exit Select\n                Case &quot;rb_f255&quot;\n                    Me.COM_SEND(&quot;s_incf,255&quot;)\n                    Exit Select\n            End Select\n        End If\n    End Sub\n    Private Sub rb_i_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles rb_i100.CheckedChanged, _\n                                                                                            rb_i200.CheckedChanged, _\n                                                                                            rb_i255.CheckedChanged\n\n        If Me.booting = True Then\n            Return\n        End If\n\n        If CType(sender, RadioButton).Checked = True And init_a_f = False Then\n            Select Case CType(sender, RadioButton).Name\n                Case &quot;rb_i100&quot;\n                    Me.COM_SEND(&quot;s_inci,100&quot;)\n                    Exit Select\n                Case &quot;rb_i200&quot;\n                    Me.COM_SEND(&quot;s_inci,200&quot;)\n                    Exit Select\n                Case &quot;rb_i255&quot;\n                    Me.COM_SEND(&quot;s_inci,255&quot;)\n                    Exit Select\n            End Select\n        End If\n    End Sub\n\n    '===========================================================\n    '\n    '   \u30d7\u30ea\u30bb\u30c3\u30c8\u8a2d\u5b9a\n    '   \n    '   \n    '\n    '===========================================================\n    'move\n    Private Sub btn_mvP1_Click(sender As System.Object, e As System.EventArgs) Handles btn_mvP1.Click\n        Me.COM_SEND(&quot;move_p,1&quot;)\n        Me.COM_SEND(&quot;read_a&quot;)\n    End Sub\n\n    Private Sub btn_mvP2_Click(sender As System.Object, e As System.EventArgs) Handles btn_mvP2.Click\n        Me.COM_SEND(&quot;move_p,2&quot;)\n        Me.COM_SEND(&quot;read_a&quot;)\n    End Sub\n\n    Private Sub btn_mvP3_Click(sender As System.Object, e As System.EventArgs) Handles btn_mvP3.Click\n        Me.COM_SEND(&quot;move_p,3&quot;)\n        Me.COM_SEND(&quot;read_a&quot;)\n    End Sub\n\n    Private Sub btn_mvP4_Click(sender As System.Object, e As System.EventArgs) Handles btn_mvP4.Click\n        Me.COM_SEND(&quot;move_p,4&quot;)\n        Me.COM_SEND(&quot;read_a&quot;)\n    End Sub\n\n    'set\n\n    Private Sub btn_stP1_Click(sender As System.Object, e As System.EventArgs) Handles btn_stP1.Click\n        Me.COM_SEND(&quot;s_prst,1,&quot; + tx_zoom.Text + &quot;,&quot; + tx_focus.Text + &quot;,&quot; + tx_iris.Text)\n    End Sub\n\n    Private Sub btn_stP2_Click(sender As System.Object, e As System.EventArgs) Handles btn_stP2.Click\n        Me.COM_SEND(&quot;s_prst,2,&quot; + tx_zoom.Text + &quot;,&quot; + tx_focus.Text + &quot;,&quot; + tx_iris.Text)\n    End Sub\n\n    Private Sub btn_stP3_Click(sender As System.Object, e As System.EventArgs) Handles btn_stP3.Click\n        Me.COM_SEND(&quot;s_prst,3,&quot; + tx_zoom.Text + &quot;,&quot; + tx_focus.Text + &quot;,&quot; + tx_iris.Text)\n    End Sub\n\n    Private Sub btn_stP4_Click(sender As System.Object, e As System.EventArgs) Handles btn_stP4.Click\n        Me.COM_SEND(&quot;s_prst,4,&quot; + tx_zoom.Text + &quot;,&quot; + tx_focus.Text + &quot;,&quot; + tx_iris.Text)\n    End Sub\nEnd Class\n\n<\/pre>","protected":false},"excerpt":{"rendered":"<p>\u63d0\u4f9b\u3057\u3066\u3044\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306e\u30b3\u30fc\u30c9\u306f\u4ee5\u4e0b\u306e\u30b3\u30fc\u30c9\u3068\u306a\u3063\u3066\u304a\u308a\u307e\u3059\u3002<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3767","post","type-post","status-publish","format-standard","hentry","category-1"],"_links":{"self":[{"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=\/wp\/v2\/posts\/3767","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3767"}],"version-history":[{"count":12,"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=\/wp\/v2\/posts\/3767\/revisions"}],"predecessor-version":[{"id":5755,"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=\/wp\/v2\/posts\/3767\/revisions\/5755"}],"wp:attachment":[{"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3767"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3767"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tesbit.co.jp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3767"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}