Невизуальный компонент создается путем наследования TComponent.
В конструкторе создать переменную классового типа TRegIniFile.
В деструкторе обеспечить разрушение переменной TRegIniFile.
Для чтения строковых значений используется метод ReadString класса TRegIniFile, а для чтения логических значений – метод ReadBool:
Пример 20.1.
function TRegIniFile.ReadString(const Section, Ident, Default: string): string; function TRegIniFile.ReadBool(const Section, Ident: string; Default: Boolean): Boolean;
Для того чтобы перебрать все компоненты, принадлежащие форме, на котором размещен компонент, следует воспользоваться свойством Owner и его индексированным свойством Components.
Количество элементов свойства Components содержится в свойстве ComponentCount.
Попытка обратиться к элементу Components с индексом больше или равным ComponentCount приведет к возникновению исключительной ситуации.
Обратите внимание, что элемент индексированного свойства Components возвращает тип TComponent и для того, чтобы работать с ним, как с TCheckBox нужно использовать операцию преобразования типов as.
Для записи строковых значений используется метод WriteString класса TRegIniFile, а для чтения логических значений – метод WriteBool:
Пример 20.2.
procedure TRegIniFile.WriteString(const Section, Ident, Value: String); procedure TRegIniFile.WriteBool(const Section, Ident: string; Value: Boolean);
Перебор компонентов осуществляется также с помощью индексированного свойства Components.
Метод чтения значений следует вызывать в момент показа или создания диалога, а сохранения – в момент закрытия с подтверждением выбора диалога, (например, нажатия кнопки "Ok").