Трусов M. А. Visual Basic .NЕТ Практическое руководство для начинающего программиста стр.97
Трусов M. А. Visual Basic .NЕТ Практическое руководство для начинающего программиста стр.97

Private Sub Button4_Click(ByVal sender As System.Object,_ ByVal e As System.EventArgs) Handles Button4.Click MsgBox("сейчас" & DatePart("m", Now) & "месяц года") End Sub

Трусов M. А. Visual Basic .NЕТ Практическое руководство для начинающего программиста

^jpT ГЛАВА 18 ▼ Текстовый редактор DateSerial

Данная функция служит для получения даты, которая определяется числом дней, отсчитываемых от установленного в системе реального значения времени. Предположим, сегодня 14 ноября 2005 года. В коде это будет выглядеть так: 2005, 11, 14.В предлагаемом ниже примере та же дата выводится и в текстовом поле.

Private Sub Buttonl_Click(ByVal sender As System.Object,_ ByVal e As System.EventArgs) Handles Buttonl.Click

TextBoxl.Text = DateSerial(2005, 11, 14) End Sub

Однако, если заменить одно из значений отрицательным числом, отсчет будет вестись от последнего значения предыдущего временного интервала. Почему так происходит? Дело в том, что система определяет текущую дату, отсчитывая количество дней от установленного первоначального значения. Таким образом, сначала считаются дни в соответствии с количеством лет, затем - с количеством месяцев и уже потом определяется количество дней в указанном месяце. Если в предыдущем примере третий параметр представить отрицательным числом, то отсчет закончится последним днем предыдущего месяца, то есть октября. Затем, увидев отрицательное число, программа вычтет его из количества дней в октябре. В результате будет получено значение 17 .10.2005.

DateValue

Данная функция определяет дату по ее текстовому значению. Введя в программу строку, содержащую дату, мы получим ее значение в виде, соответствующем требованиям системы. Программа, использующая функцию DateValue, может выглядеть следующим образом:

Private Sub Buttonl_Click(ByVal sender As System.Object,_ ByVal e _ As System.EventArgs) Handles Buttonl.Click Dim a As String

TextBox2.Text = DateValue("14 ноября") "TextBox2.Text = DateValue("14.11.05r") End Sub

5*

Числа и даты

Но не надо думать, что это может быть любая строка. Непременным условием является полное соответствие виду, который будет понятен функции IsDate. Поэтому в данном случае особенно важно проверять правильность написания даты с помощью IsDate. Если в строке не указан год, по умолчанию указывается текущий.


⇐ Предыдущая Следующая ⇒
 
 
 
Powered by Exponenta