Программирование >>  Элементы языков с и с++ 

1 ... 141 142 143 [ 144 ] 145 146 147 ... 200


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

* Вычитание дог

Уменьшаемое lislBoxl

i Пуск I

Вычш-аемое listBox2

Выхоа

читание дат

Результат

! ШокЗ

Пуск

Уменьшаемое Вычитаемое Результат

061г200613:02:0. 0306.2006 22:15:00 185.U4700

1210 2006 642:00 1В5.14:47:00 , 09.04 200617:55.1

06.12.200613020 12.102006642:00 55042000

03.06.2006 22:15:0 155.04:20:00 . 0904 200617:551

Выход

Рис. 11.98. Вычитание дат

? Листинг 11.19

private: System::Void buttonl Click(System::Object sender. System:: EventArgs e)

this->Close(); .

private: System::Void button2 Click(System::Object sender. System: : EventArgs e)

String s;

System::DateTime datel = System::DateTime( 2006, 6, 3, 22, 15, 0 ); System::DateTime date2 = System::DateTime( 2006, 12, 6, 13, 2, 0 ) ;

/*Это один из конструкторов класса DateTime, инициализирующий экземпляр класса значениями (год, месяц, число, часы, минуты, секунда)/

System::DateTime dateS = System::DateTime( 2006, 10, 12, 8, 42, 0 );



I (шпоненты, создающие интерфейс между пользователем и приложением 435 lliiitl (разность) равна 185 дней, 14 часов, 47 минут.

р/Класс TimeSpan задает интервал времен!. У него есть свои события и методы j. /stem: :TimeSpan diffl = date2.Subtract ( datel ) ; Ithis->listBoxl->Iteitis->Add (date2.ToString ()) ; I ihis->listBox2->Items->Add (datel. ToString ()); Ittb->listBox3->Items->Add(diffl .ToString ()) ;

Iv/date4 получается 4/9/2006 17:55:00 I-rstem::DateTime date4 = date3. Subtract ( diffl ) ; ru.iS->listBoxl->Items->Add(date3.ToStringO ) ; -jiiS->listBox2->Items->Add (diffl.ToString 0 ) ; riis->listBox3->Items->Add (date4 . ToString ()) ;

,Vdiff2 (разность) равна 55 дней, 4 часа, 20 минут. ISystem::TimeSpan diff2 = date2 - date3; IiMs->listBoxl->Items->Add (date2. ToString ()) ; tjis->listBox2->Items->Add(date3.ToString()) ; iJiis->listBox3->Items->Add (diff2. ToString () ) ;

I/( dates получается 4/9/1996 17:55:00 [. ntem::DateTime date5 = datel - diff2; *is->listBoxl->Items->Add(datel.ToStringO ) ; diis->listBox2->Items->Add(diff2.ToStringO ) ; s-:is->listBox3->Items->Add(date5.ToString()) ; I

1 Слоне ние дат

Uc/игаемое

Паск

2-е слагаемое

Результат

ШокЗ

Вькоа

1 -е слагаемое

Пуск

2е слагаемое

Результат

08 03 2007г,>жгверг 08 03 2007 г. четверг 08 03.2007 г. четверг 08.03.2007 г. четверг

36 00 00 00

Вьжоа

пятница пятница понедельник воскресенье



Листинг 11.20

private: System::Void buttonl Click(System::Object sender. System: :EventArgs e) ,

this->Close(); }

private: System::Void button2 Click(System::Object sender. System: :EventArgs e)

String s;

--------/

/♦Метод Add()- добавляет интервал времени к данной дате Интервал задается данными класса TimeSpan: запускают один из его конструкторов, который и задает добавку в днях к данному экземпляру даты*/

/*3десь подсчитывается, какой день недели будет, если к текущей дате

добавить 36 дней*/

System::DateTime today = System::DateTime::Now; текущая дата

System::TimeSpan duration( 36, 0, 0, 0 );

/*Конструктор придает начальные значения членам класса: задаются количество дней, часы, минуты, секунды. Фактически это структура: 1-й элемент интервал времени в днях , 2-й элемент - интервал времени в часах, и т. д. Мы станем использовать интервал количество дней */

System::DateTime answer = today.Add( duration );

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

AddDays(), AddMonths(), AddYears().

В листинге 11.20 приведены тексты обработчиков событий этого приложения.



1 ... 141 142 143 [ 144 ] 145 146 147 ... 200

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика