Форум: "Начинающим";
Текущий архив: 2007.09.09;
Скачать: [xml.tar.bz2];
ВнизРабота с *.ini Найти похожие ветки
← →
nord489 (2007-08-14 21:07) [0]Здравствуйте. Написал следующий код:
procedure TForm3.FormDestroy(Sender: TObject);
var
nastroiki: Tinifile;
begin
nastroiki:=TiniFile.Create("C:\...\Nastroiki.ini");
nastroiki.WriteInteger("Color Akliv Letter","Color Label", Form2.Label1.Color);
nastroiki.Free;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
nastroiki: Tinifile;
begin
nastroiki:=TiniFile.Create("C:\...\Nastroiki.ini");
Form2.Label1.Color:=nastroiki.ReadInteger("Color Akliv Letter","Color Label",255);
nastroiki.Free;
end;
В uses есть Inifiles.
При запуске выдает ошибку: "Access violation at address 00466A8C in module "Projectl.exe". Read of address 000002FC."
Подскажите, пожалуйста, в чем проблема!?
← →
Юрий Зотов © (2007-08-14 21:22) [1]Form2 может быть:
- уже уничтожена при сохранении цвета;
- еще не создана при чтении цвета.
Точнее подскажет дебаггер. Но почему бы не прописать эти же действия в обработчиках TForm2, а не TForm1?
← →
sniknik © (2007-08-14 21:27) [2]> в чем проблема!?
при создании первой формы вторая еще не существует, а у тебя к ней обращение в событии создания. также при уничтожении 3-й вторая может быть уже уничтожена, а у тебя там опять обращение.
старайся вообще не ссылаться из одной формы на другие, неважно из какого события...
имхо, лучше бы сделать отдельный модуль без форм для хранения настроечных переменных, а не вот так как ты напрямую писать.
← →
nord489 (2007-08-14 22:11) [3]Юрий Зотов и sniknik большое спасибо! Ошибку понял! Все работает!
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.09.09;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.041 c