C++ Программирование в среде С++ Builder 5



Свойства - часть 2


  • свойство имеет значение по умолчанию, равное 1.
  • Set-функция, как и поле свойства, объявлена в разделе private:

    void _fastcall SetStartOfWeek(TDayOfWeek Value);

    Объявление свойства Month несколько сложнее:

    property Integer Month = {read=GetDateElement,

    write=SetDateElement,

    stored=false,

    index=2,

    nodefault};

    Атрибуты stored и nodefault относятся к так называемым спецификаторам хранения. Атрибут index показывает, что функции доступа должны вызываться с дополнительным (первым) аргументом, равным 2. Вот объявление set-функции:

    void _fastcall SetDateElement(int Index, int Value);

    На самом деле календарь сохраняет дату в единственном поле FDate типа TDateTime. Свойства Year, Month, Day не имеют собственных полей, а их функции доступа (они одни и те же, только с разными индексами) оперируют полем FDate.

    Исходный модуль с кодом календаря ccalendr.cpp вы можете найти в папке ...\CBuilder5\Examples\Controls\Source.




    Содержание  Назад  Вперед