Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Значения даты и времени

СТРОКИ

TDBMemo

Создает, по аналогии с компонентой TMemo, многострочную прямоугольную область с линейкой прокрутки для отображения и редактирования длинного поля текущей записи в наборе данных.

Свойство Text адресует указанное поле в наборе данных, содержащее многострочную алфавитно-цифровую последовательность или Большой Бинарный Объект (BLOB).

 

Новшества в языке C++

C++ принадлежит к разряду языков профессионального программирования, которыми программист, студент или просто любитель начинает интересоваться, уже зная какой нибудь другой язык, например Pascal или Basic Можно, конечно, "поднять" C++ "с нуля", но занятие это будет не из легких, и достижение профессионального уровня звймет достаточно много времени. Блага, что сейчас по C++ имеется множество хороших книг, которые помогут освоить этот язык Отсылаем к ним новичков. Мы же будем считать, что читатель знаком с C++ и архитектурой компьютера, и опишем лишь новые элементы и средства языка, появившиеся в С++ Builder.

 

Строки всегда были больным вопросом для программистов на С и C++. Их реализация в этих языках настолько приближена к физическим особенностям аппаратуры, что приходилось тратить очень много времени на обычные операции присваивания, сцепления и сравнения строк. Среда C++Builder наконец-то сняла этот вопрос, предложив программистам использовать класс AnsiString для работы со строками.

Свойства Text и Caption, которые есть у многих компонентов, имеют тип AnsiString.

Объявление строковых переменных может выглядеть следующим образом:

 

AnsiString filename;

AnsiString extention = ".doc";

 

Переменные filename и extention в этом примере — это объекты класса AnsiString. В нем реализованы все необходимые функции и операторы для работы со строками в манере, свойственной языку Pascal. Теперь вы смело можете складывать, присваивать, сравнивать строковые переменные и значения, как это делается с числами:

 

filename = "Report" + extenfion;

if (extention == ".doc")...

 

В зависимости от присваиваемого значения строка AnsiString увеличивается и сокращается динамически. Управление памятью при операциях со строками выполняется автоматически. Для получения текущей длины строки AnsiString используется метод Length, а для изменения длины — метод SetLength. Максимальная длина строки AnsiString составляет 2 Гб.

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

Например, выражения filename[1] и filename[6] по отношению к строке "Report.doc" возвращают соответственно символы 'R.' и 't. Символы, получаемые в результате индексирования строки AnsiString, принадлежат типу char.

Достоинство строки типа AnsiString состоит в том, что она объединяет в себе схожесть со строками языков Pascal и С. Схожесть с Pascal проявляется в том, что строки AnsiString можно складывать, сравнивать и присваивать, как обычные числа. Схожесть с языком С проявляется в том, что строку AnsiString можно передать в параметре функции вместо нуль-терминированной строки. Для этого строка типа AnsiString преобразуется к нужному типу с помощью метода c_str.

AnsiString ii;

ii="rgsdf ";

Edit1->Text=ii+"zdfzdf";

Edit1->Text=ii.c_str();

 

 

Для представления значений даты и времени в C++Builder существует специальный класс TDateTime. Единственный элемент данных, определенный в классе TDateTime, хранит обобщенное значение даты и времени в формате double. Его целая часть соответствует количеству дней, прошедших с полночи 30 декабря 1899 года, а дробная часть соответствует времени дня. Например:

 

Значение Дата   Время  
  30.12.1899 00:00:00
0.5 30.12.1899 12:00:00
1.5 31.12.1899 12:00:00
-1.25 29.12.1899 06:00:00
35431.0 1.1.1997 00:00:00

 

Объявления и инициализации переменных класса TDateTime будут выглядеть так:

 

TDateTime d(1997, 10, 1); // дата(год/месяц/день)

TDateTime t(9, 30, 0, 0); // время(час, минута, секунда, миллисекунда)

TDateTime date_time;

 

В C++Builder имеются все необходимые функции и операторы для работы с переменными класса TDateTime как с обычными вещественными числами типа double. Например, вы можете записать

 

date_time = d + t;

1. Now() -Возвращает текущую дату и время.

extern PACKAGE System::TDateTime __fastcall Now(void);

2. DecodeDate Разделяет величину TDateTime в годе, месяце, и день оценивает и хранит эти величины в течение года, месяца, и дневных параметров, соответственно.

void __fastcall DecodeDate(unsigned short* year, unsigned short* month, unsigned short* day) const;

3. FormatDateTime Форматирует объект TDateTime используя формат заданный в поле format.

extern PACKAGE AnsiString __fastcall FormatDateTime(const AnsiString Format, System::

TDateTime DateTime); Форматирует объект TDateTime используя формат заданный в поле format.

AnsiString __fastcall FormatString(const AnsiString& format);

<== предыдущая лекция | следующая лекция ==>
Компоненты управления данными | Информационные окна
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 397; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.