Well, you got half the answer here. The rest of the answer is that you
have to determine which control was hit to cause the routine to run.
It gets messy! Losing control arrays is a real pain!
Mike
Sub AlarmChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) _
Handles Alarm1.ValueChanged, Alarm2.ValueChanged, Alarm3.ValueChanged,
Alarm4.ValueChanged, Alarm5.ValueChanged, _
Alarm6.ValueChanged, Alarm7.ValueChanged, Alarm8.ValueChanged,
Alarm9.ValueChanged, Alarm10.ValueChanged, _
Alarm11.ValueChanged, Alarm12.ValueChanged, Alarm13.ValueChanged,
Alarm14.ValueChanged, Alarm15.ValueChanged, _
Alarm16.ValueChanged, Alarm17.ValueChanged, Alarm18.ValueChanged,
Alarm19.ValueChanged, Alarm20.ValueChanged, _
Alarm21.ValueChanged, Alarm22.ValueChanged, Alarm23.ValueChanged,
Alarm24.ValueChanged, Alarm25.ValueChanged, _
Alarm26.ValueChanged, Alarm27.ValueChanged, Alarm28.ValueChanged,
Alarm29.ValueChanged, Alarm30.ValueChanged, _
Alarm31.ValueChanged, Alarm32.ValueChanged, Alarm33.ValueChanged,
Alarm34.ValueChanged, Alarm35.ValueChanged, _
Alarm36.ValueChanged, Alarm37.ValueChanged, Alarm38.ValueChanged,
Alarm39.ValueChanged, Alarm30.ValueChanged, _
Alarm41.ValueChanged, Alarm42.ValueChanged, _
Alarm1.Click, Alarm2.Click, Alarm3.Click, Alarm4.Click, Alarm5.Click,
_
Alarm6.Click, Alarm7.Click, Alarm8.Click, Alarm9.Click, Alarm10.Click,
_
Alarm11.Click, Alarm12.Click, Alarm13.Click, Alarm14.Click,
Alarm15.Click, _
Alarm16.Click, Alarm17.Click, Alarm18.Click, Alarm19.Click,
Alarm20.Click, _
Alarm21.Click, Alarm22.Click, Alarm23.Click, Alarm24.Click,
Alarm25.Click, _
Alarm26.Click, Alarm27.Click, Alarm28.Click, Alarm29.Click,
Alarm30.Click, _
Alarm31.Click, Alarm32.Click, Alarm33.Click, Alarm34.Click,
Alarm35.Click, _
Alarm36.Click, Alarm37.Click, Alarm38.Click, Alarm39.Click,
Alarm30.Click, _
Alarm41.Click, Alarm42.Click
If sender.Equals(Alarm1) Then : CheckAlarmVsWarn(Warn1, Alarm1) : Exit
Sub
ElseIf sender.Equals(Alarm2) Then : CheckAlarmVsWarn(Warn2, Alarm2)
: Exit Sub
ElseIf sender.Equals(Alarm3) Then : CheckAlarmVsWarn(Warn3, Alarm3)
: Exit Sub
ElseIf sender.Equals(Alarm4) Then : CheckAlarmVsWarn(Warn4, Alarm4)
: Exit Sub
ElseIf sender.Equals(Alarm5) Then : CheckAlarmVsWarn(Warn5, Alarm5)
: Exit Sub
ElseIf sender.Equals(Alarm6) Then : CheckAlarmVsWarn(Warn6, Alarm6)
: Exit Sub
ElseIf sender.Equals(Alarm7) Then : CheckAlarmVsWarn(Warn7, Alarm7)
: Exit Sub
ElseIf sender.Equals(Alarm8) Then : CheckAlarmVsWarn(Warn8, Alarm8)
: Exit Sub
ElseIf sender.Equals(Alarm9) Then : CheckAlarmVsWarn(Warn9, Alarm9)
: Exit Sub
ElseIf sender.Equals(Alarm10) Then : CheckAlarmVsWarn(Warn10,
Alarm10) : Exit Sub
ElseIf sender.Equals(Alarm11) Then : CheckAlarmVsWarn(Warn11,
Alarm11) : Exit Sub
.....repeat until sick of the whole thing! This is NUTZ!!!!!
On Sat, 19 Jul 2008 18:18:04 -0400, in
microsoft.public.dotnet.languages.vb "Lloyd Sheen" <a@b.cwrote:
>
"Sheldon" <Sh*****@discussions.microsoft.comwrote in message
news:7D**********************************@microso ft.com...
>Hello -
I found the following code on the Internet which is perfect for my needs
with datetimepicker controls:
Private Sub dtpOther_ValueChanged(ByVal sender As Object, ByVal e As
System.EventArgs) Handles dtpOther.ValueChanged
Dim newTime As DateTime = dtpOther.Value
Dim hr As Integer = newTime.Hour
Dim min As Integer = newTime.Minute
Dim sec As Integer = newTime.Second
If (oldTime.Hour = 23 AndAlso newTime.Hour = 0) OrElse
(oldTime.Hour
= 0 AndAlso newTime.Hour = 23) Then
hr = oldTime.Hour
End If
If (oldTime.Minute = 59 AndAlso newTime.Minute = 0) OrElse
(oldTime.Minute = 0 AndAlso newTime.Minute = 59) Then
min = oldTime.Minute
End If
If (oldTime.Second = 59 AndAlso newTime.Second = 0) OrElse
(oldTime.Second = 0 AndAlso newTime.Second = 59) Then
sec = oldTime.Second
End If
If hr <newTime.Hour OrElse min <newTime.Minute OrElse sec <>
newTime.Second Then
dtpOther.Value = DateTime.Now.Date.Add(New TimeSpan(hr, min,
sec))
End If
oldTime = dtpOther.Value
End Sub
I have nine timepicker controls which all need to do the same thing as the
above. How can I consolidate it in code instead of doing one each of the
Sub
for each of the controls?
I know it's an elementary question for a lot of you, but I'm just learning
this stuff.
Any help will be appreciated!
--
Sheldon
There are two different ways to do it.
First is using AddHandler. This could be put in the load of the form as
follows:
AddHandler ControlName.ValueChanged , AddressOf dtpOther_ValueChanged
The second is to add each Control.ValueChanged in the Handles clause as
follows:
Private Sub dtpOther_ValueChanged(ByVal sender As Object, ByVal e As
System.EventArgs) Handles dtpOther.ValueChanged , OtherControl.ValueChanged
, AnotherControl.ValueChanged ....etc
Hope this helps
LS