Доброго времени суток.
Ситуация следующая. На форме расположены 24 лейбла, по замыслу каждый соответствует временному промежутку в 1 час.
Необходимо сравнивать текущее системное время и подсвечивать соответствующий лейбл.
Написал функцию, в которой возвращаем системное время в часах, и сравниваем ее с названием лейбла. Нужна именно функция, потому что в конечном счете будет таблица из 552 лейблов.(23х24, где ряды это часы, а строки A-W как в Excel ) Поэтому два вложенных цикла, один проходит по всем лейблам, второй по каждому из 24. (например А0-А23)
Ситуация следующая. На форме расположены 24 лейбла, по замыслу каждый соответствует временному промежутку в 1 час.
Необходимо сравнивать текущее системное время и подсвечивать соответствующий лейбл.
Написал функцию, в которой возвращаем системное время в часах, и сравниваем ее с названием лейбла. Нужна именно функция, потому что в конечном счете будет таблица из 552 лейблов.(23х24, где ряды это часы, а строки A-W как в Excel ) Поэтому два вложенных цикла, один проходит по всем лейблам, второй по каждому из 24. (например А0-А23)
Код |
---|
Private Sub HourReload() CurrentHour = Hour(Now) Dim lblHour As Integer Dim lblname As Control For Each lblname In ChartFrame 'название рамки объединяющей все лейблы If TypeOf lblname Is Label Then For i = 0 To 23 If lblname Like "*i" Then lblHour = i Next i End If Next lblname If lblHour <> CurrentHour Then lbl.BackColor = &H80000004 Else lbl.BackColor = &HC0E0FF End If End Sub |