
- •Лабораторна робота №5-6. Тема: Робота з датою і часом. Елементи управління Timer, Monthcalendar та DateTimePicker.
- •Додавання і віднімання дати або часу
- •Визначення інтервалу між двома значеннями часу або датами
- •Частина дати
- •Поточні системні дата і час
- •Ще деякі методи та властивості
- •Створення таймерів
- •Використання об'єкту таймера для встановлення обмеження за часом
- •Приклад (основні кроки):
- •Виділення дат
- •Робота з календарем
- •6 Вересня 2010 року – понеділок
- •Отримувані значення
- •Варіанти індивідуальних завдань
Частина дати
Іноді буває дуже корисним використання тільки певної частини дати. Наприклад, користувач вводить свій день народження, а програма на підставі цієї інформації проводить операції, виходячи з місяця у введеній даті. Для повернення частини дати застосовується функція DatePart(), яка має синтаксис:
DatePart(interval, date) As Integer
Можливі значення інтервалу такі ж, як і для функцій DateAdd() і DateDiff().
Представимо деякі приклади, що ілюструють роботу функції DatePart ():
DatePart(DateInterval.Month, #7/22/1969#) ' Повертає 7
DatePart(DateInterval.Hour, #3:00:00 PM#) ' Повертає 15
DatePart(DateInterval.Quarter, #6/9/2001#) ' Повертає 2
Поточні системні дата і час
Visual Basic дозволяє повертати поточні системні значення дати і часу. Це досягається шляхом застосування структури DateTime. Структура DateTime може використовуватися з декількома членами, які відтворюють різні варіанти системного часу або дати. Один член - Today, повертає поточну системну дату. Наприклад, замість поточної системної дати можна використовувати інструкцію вигляду:
Dim objtoday As Date = DateTime.Today
Для повернення поточної системної дати і часу використовується властивість Now в структурі DateTime:
Dim objtoday As Date = DateTime.Now
Запам'ятаєте DateTime.Today і DateTime.Now. У додатках нерідко виникає необхідність використання поточної системної дати і/або часу. Використання цих структур – простий шлях отримання подібної інформації.
Форматування дати і часу
Як вже зазначалося раніше, найчастіше проводиться робота тільки з датою або тільки з часом, розташованим у змінній з типом даних Date. Крім того, як правило, виникає бажання контролювати формат відображення дати і часу. Все це досягається за допомогою функції Format(). За допомогою функції Format() можна досягти різноманітного форматування дат і часу. Немає можливості показати всі можливості застосування функції Format(), проте будуть продемонстровані можливості виведення частини дати або часу за допомогою цієї функції. Функція Format() має наступний синтаксис:
Format(expression, style)
Параметр expression є форматованим виразом, a style - рядковим значенням, що містить інформацію про тип форматування. Наприклад, для відображення інформації про місяць дати в style використовується літера М. Якщо встановити одну букву М, то місяць відобразиться у вигляді однієї цифри для місяців з 1 по 9, або двох цифр - з 10 по 12. Якщо встановити дві букви М, то номер місяць завжди відображується у вигляді двох цифр. Три букви М призводять до відображення трибуквеної абревіатури місяці, а чотири - до відображення повної назви місяця не залежно від довжини слова. (Зауважимо, що маленька літера m використовується для повернення хвилин). Представлені приклади ілюструють викладене:
Format(#1/22/2002#, "M.") ' повертає 1
Format(#1/22/2002#, "MM") ' повертає 01
Format(#1/22/2002#, "MMM") ' повертає Січ
Format(#1/22/2002#, "MMMM") ' повертає Січень
Існує велика кількість форматів для представлення років, днів, годин, хвилин і навіть AM і PM. Список допустимих форматів просто гігантський, тому для більш детального ознайомлення рекомендуємо звернутися до довідки в Visual Basic .NET.
Format(#7/22/2001#, "MMM. d, yyyy") ' повертає: Лип. 22, 2001
Format(#7/22/2001#, "MMMM, yyyy") ' повертає: Липень, 2001
Format(#9:37:00 PM#, "h:mm") ' повертає: 9:37
Format(#5/14/1998 9:37:00 PM#, "MM.dd.yyyy hh:mm"))' повертає: 05.14.1998 09:37
Format(#1/27/2001 5:04:23 PM#, "HH:mm:ss")) ' повертає: 17:04:23
Як видно з прикладів, кома, двокрапка і крапка з'являються в форматованому рядку в тому місці, де вони перебували в style.