投稿者 タカジィ  (社会人) 投稿日時 2020/10/26 18:12:20
すでに60歳を超えた爺で、趣味のプログラマーです。
※プログラム業界に関わったことは一度もありません(完全に独学です)。

春先から、久しぶりに(10年ぶりぐらい;笑)自作プログラムをVB2019に変更してました。
その頃に、このサイトを見つけ、初級講座と改訂版…を何度も懐かしく読み直してました。

最近、このプログラムに、どうもバグ(ずっと以前からの)があることに気づき、変数などをチェックしてるのですが、With内で構造体の値のチェック方法がわかりません。
よろしくご指導お願いします。

●経過
構造体をWith ~ End With内で使うとき、名前の省略ができるとあったので、全部を変更しました。
とても見やすくはなったのですが、プロシージャ内で「Stop」をかけて、変数値をチェックしようしても、値が表示されない?
●サンプル
下記プログラム中の「Stop」で止めて、カーソルを「test.nmb1」の上にすると、値が表示されるが、省略時の「.nmb1」では、何も変化なし…?
※カーソルを「dummy01」の上にすると、値が表示されますが、実際のプログラムでは、こういう状況はあまりないです(使えない)。
●本職の皆さんは、どういう方法を使ってるのでしょうか…?
よろしくお願いいたします。

'テスト用にフォームを間借り
Public Class Form1

    '構造体を定義 ※実際には多数の変数を収納
    Friend Structure STRUCT_test
        Friend nmb1 As Integer
    End Structure

    Friend test As STRUCT_test

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        test.nmb1 = 1
        TestWith()
    End Sub

    Public Sub TestWith()
        With test
            Dim dummy01 As Integer = .nmb1     'With使用で、構造体名(というのか?)省略
            Dim dummy11 As Integer = test.nmb1 '省略なし

            Stop

        End With
    End Sub
End Class