Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.10;
Скачать: CL | DM;

Вниз

не знаю, как сделатью Очень нужна помощь.   Найти похожие ветки 

 
антон_   (2002-05-07 21:55) [0]

Есть компонент для работы с переменными в реестре, но у меня никак не получается сделать так, чтобы значения переменных обновлялись всякий раз при обращении к ним (в RunTime) (функция LoadValues). Подскажите, куда и в каком виде её вставить. Буду очень признателен, а то очень срочно надо. Сейчас переменные читаются только при запуске программы с данным компонентом и записываются только при закрытии программы. Хотелось бы всегда иметь в RunTime иметь возможноть редактировать значения переменных.

К сожалению код компонента не убирается в 5000 символов и я не могу разместить его здесь, но могу выслать на email. Размер кода - около 15kb.


Описание:TRegValues version 1.1

Данный компонент предназначен для удобного хранения переменных, используемых в программе, в системном реестре Windows. Все переменные автоматически считываются из реестра и также автоматически записываются обратно в момент закрытия программы.
Как им пользоваться?

Во первых положите компонент TRegValues на вашу главную форму, так как она создается раньше других и следовательно переменные будут считаны раньше. Что бы добавить переменные выберите свойство Items. Редактор свойств подобен редакторам обьектов типа TCollection (не буду обьяснять как ним работать). Далее вам надо задать тип переменной. Доступно несколько типов:
· Boolean
· DateTime
· Float
· Integer
· String

В эти пять типов возможно уложить практически все типы доступные в Delphi. TRegValues очень гибкий компонент если использовать его свойство Value, которое имеет тип VARIANT.

Как получить доступ к переменным внутри программы?

Можно использовать несколько вариантов.
1 Доступ по индексу

RegValues1.items[N].Value - где N является позицией переменной в списке

2 Доступ по имени
RegValues1.items.GetByName(ValueName).Value - где ValueName имя переменной

Через эти два типа доступа возможно как получать значение переменной так и записывать.
Пример:
MyVar:=RegValues1.items[0].Value;
MyVar:=MyVar+10;
RegValues1.items[0].Value:=MyVar;

или

MyVar:=RegValues1.items.GetByName("Window X").Value;
MyVar:=MyVar+10;
RegValues1.items.GetByName("Window X").Value:=MyVar;

Имеется и более быстрый доступ.
Для получения значения переменной используйте следующий вид.
MyVar:=RegValues1.Get("Windows X");
Для сохранения значения -
GerValues1.SetV("Window X",MyVar);

Доступ по типу.
Если вам нужно получить или сохранить переменную определенного типа, то вы можете использовать следующие свойства:
AsBoolean
AsString
AsInteger
AsDateTime
AsFloat

Пример:
DateTimePicker1.Date:=RegValues1.items[1].AsDateTime;

-------------------


 
BAHO ©   (2002-05-08 00:30) [1]

Работай с реестром напрямую и забудь этот компонент...(TRegistry)



Страницы: 1 вся ветка

Текущий архив: 2002.06.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
3-30677
Chainik
2002-05-17 13:23
2002.06.10
Выборка первых 2-х цифр из поля таблицы


3-30714
eco
2002-05-18 15:14
2002.06.10
Разработка компонента БД


1-30815
AlexPotemkin
2002-05-31 12:08
2002.06.10
About ListBox and Mouse


4-31051
DeMoN-777
2002-04-09 10:55
2002.06.10
Критическая запарка (ComboBox)


14-30985
SPeller
2002-05-05 16:50
2002.06.10
ВНИМАНИЕ !!! Обнаружена ошибка в модуле Windows !!!