Обратный Таймер!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
TiG
Постоялец
Постоялец
 
Сообщения: 327
Зарегистрирован: 12.05.2003 (Пн) 12:34
Откуда: Ростов-на-Дону

Обратный Таймер!

Сообщение TiG » 10.06.2003 (Вт) 9:21

Уважаемые продвинутые программеры, подскажите способы обратного таймера с временным форматом (только минуты и секунды, т.е. до 60 минут!)
Я смог сделать только чтобы вычиталось по одной секунде, но всё это в формате типа 600-1.... и т.д. Хотелось бы задавать и наблюдать вот такой формат: 16:27.

Вот текст который у меня:
Dim T As Long
Private Sub Command1_Click()
If Text1 < 3601 Then
Command1.Visible = False
Command2.Visible = True
Timer1.Enabled = True
Else
Form2.Show
End If
T = Text1.Text
End Sub
Private Sub Command2_Click()
Timer1.Enabled = False
Command2.Visible = False
Command1.Visible = True
End Sub
Private Sub Timer1_Timer()
T = T - 1
If T < 0 Then
T = 0
Timer1.Enabled = False
End If
Text1.Text = T
End Sub

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 10.06.2003 (Вт) 10:18

Ну и правильно всё. Только вывод времени на форму будет в виде

(T \ 60) & ":" & T - T \ 60
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

TiG
Постоялец
Постоялец
 
Сообщения: 327
Зарегистрирован: 12.05.2003 (Пн) 12:34
Откуда: Ростов-на-Дону

Нестыковочка!

Сообщение TiG » 10.06.2003 (Вт) 13:02

Спасибо большое, но есть одно но!
7:987 - это что за время такое. И кайф чтобы вводить тоже надо было не в количестве секунд а в формате времени 12:05. Проблемма в том что нужно перевести в шестидесятиричную систему наверное.
Все мои игрушки мама разметало ураганом...

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 10.06.2003 (Вт) 13:27

вот так вот наверно правильней :wink:
Код: Выделить всё
(T \ 60) & ":" & ((T \ 10) Mod 6) & (T Mod 10)
Ничто так не ограничивает полёт мысли программиста, как компилятор

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 10.06.2003 (Вт) 13:37

или можно совсем красиво (с 2-мя цифрами при минутах)
Код: Выделить всё
((T \ 60) \ 10) & ((T \ 60) Mod 10) & ":" & ((T \ 10) Mod 6) & (T Mod 10)
Ничто так не ограничивает полёт мысли программиста, как компилятор

basicom
Обычный пользователь
Обычный пользователь
 
Сообщения: 60
Зарегистрирован: 20.05.2003 (Вт) 10:10
Откуда: Екатеринбург

Сообщение basicom » 10.06.2003 (Вт) 14:00

а можно и вот так:
label.Caption = (23 - Hour(Time)) & ":" & (59 - Minute(Time)) & ":" & (59 - Second(Time))'Поместить в таймер
а время задавать
Time=#12:00:00# :lol:


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Yandex-бот и гости: 96

    TopList