1
有时候,我认为我想太复杂了,或者只是厌倦了想太多或者其他你可以指出的东西。我是不是觉得太复杂?我怎样才能简化这段代码?
我正在尝试复制在YouTube中找到的寻呼机,以获取我的Windows窗体应用程序。
这里是我迄今所做的:
Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrevious.Click, btn1.Click, btn2.Click, btn3.Click, btn4.Click, btn5.Click, btn6.Click, btn7.Click, btnNext.Click
If sender.text = "previous" Then
SelIndex -= 1
ElseIf sender.text = "next" Then
SelIndex += 1
Else
If sender.text > SelIndex Then
If sender.name = "btn5" OrElse sender.name = "btn6" OrElse sender.name = "btn7" Then
btn1.Text += 1
btn2.Text += 1
btn3.Text += 1
btn4.Text += 1
btn5.Text += 1
btn6.Text += 1
btn7.Text += 1
SelIndex = btn4.Text
Else
SelIndex = sender.text
End If
ElseIf sender.text < SelIndex Then
If sender.name = "btn1" OrElse sender.name = "btn2" OrElse sender.name = "btn3" Then
If btn1.Text <> "1" Then
btn1.Text -= 1
btn2.Text -= 1
btn3.Text -= 1
btn4.Text -= 1
btn5.Text -= 1
btn6.Text -= 1
btn7.Text -= 1
SelIndex = btn4.Text
Else
SelIndex = sender.text
End If
End If
Else
SelIndex = sender.text
End If
End If
Select Case SelIndex
Case 1
btnPrevious.Visible = False
Case Else
btnPrevious.Visible = True
End Select
Label1.Text = SelIndex
End Sub
第一个问题似乎是,我在沙决策圈。我不喜欢我编写代码的方式,并且不像预期的那样工作。
所以问题是:我怎么能简化这个?
是的,你确实需要一个假期 – Raj 2010-05-20 09:46:12
对于初学者,你应该遍历一系列按钮。另外,我不太了解VB.Net,但是不能写'btnPrevious.Visible =(SelIndex <> 1)',或者类似的东西? – 2010-05-20 09:47:40
为什么你在一个子处理所有按钮点击?我认为分开处理所有点击会更容易。 – 2010-05-20 10:02:18