| ■No54779 (gonna さん) に返信
決して良いコーディングではありませんが、挙動が異なる例です。
あくまで同じ動きをするものではないということを示すための例です。
・Button1のクリックでは必ずCountUpが呼ばれるのでchkUpdateLabelがチェックされていない時でも
m_intClickCntの値が変わります。
・Button2のクリックではchkUpdateLabelがチェックされていないとCountUpが呼ばれないのでchkUpdateLabelが
チェックされたときにしかm_intClickCntの値が変わりません。
Public Class Form1
Private m_intClickCnt As Integer
Sub New()
' この呼び出しはデザイナーで必要です。
InitializeComponent()
' InitializeComponent() 呼び出しの後で初期化を追加します。
m_intClickCnt = 0
End Sub
Private Function CountUp() As Boolean
m_intClickCnt += 1
If m_intClickCnt = 10 Then
m_intClickCnt = 0
Return False
Else
Return True
End If
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If chkUpdateLabel.Checked And CountUp() Then
Label1.Text = m_intClickCnt.ToString
End If
Label2.Text = m_intClickCnt.ToString
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
If chkUpdateLabel.Checked AndAlso CountUp() Then
Label1.Text = m_intClickCnt.ToString
End If
Label2.Text = m_intClickCnt.ToString
End Sub
End Class |