0

クリックするとラベルが表示されるボタンがありますが、ボタンを再度クリックするとラベルが非表示になるように、どのコードを使用して取得したのでしょうか。

Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Label4.Hide()
        Label5.Hide()
        Label6.Hide()
    End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MsgBox("All shortcuts require Shift+(Letter) combination", vbOKOnly, "Shortcuts Active")
        Label4.Show()
        Label5.Show()
        Label6.Show()
    End Sub
4

5 に答える 5

1

Visible プロパティを確認するだけです

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
   if Label4.Visible = false then 
        MsgBox("All shortcuts require Shift+(Letter) combination", vbOKOnly, "Shortcuts Active")
        Label4.Show()
        Label5.Show()
        Label6.Show()
   else
        Label4.Hide()
        Label5.Hide()
        Label6.Hide()
   End if
End Sub

または、単に表示されているプロパティを読み取って反転します

    Dim SetVisible = Not Label4.Visible
    if Label4.Visible = False then
        MsgBox("All shortcuts require Shift+(Letter) combination", vbOKOnly, "Shortcuts Active")
    End If
    Label4.Visible = SetVisible
    Label5.Visible = SetVisible
    Label6.Visible = SetVisible
End Sub
于 2013-05-18T15:01:50.223 に答える
0

オン/オフを切り替えるには、bool 変数を定義する必要があります。このように:Button1をクリックすると変数はtrueでなければならず、2回クリックするにはfalseでなければなりません

dim isClicked as bool = false
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        if !isClicked then

         Label4.Show()
         Label5.Show()
         Label6.Show()
         isClicked = true

       else

         Label4.Hide()
         Label5.Hide()
         Label6.Hide()
         isClicked = false
end if
    End Sub
于 2013-05-18T15:03:42.603 に答える
0

または、ラベルだけでなく、任意のコントロールを切り替えるより一般的な機能

Private Sub Toggle(ByVal ParamArray controls() As Control)
    For Each c As Control In controls
        c.Visible = Not c.Visible
    Next
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Toggle(Label4, Label5, Label6)
End Sub
于 2013-05-18T15:22:34.217 に答える