Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.07.13;
Скачать: [xml.tar.bz2];

Вниз

Ини файл   Найти похожие ветки 

 
Gerk   (2008-06-13 23:23) [0]

Как записать данные в .ини файл, созданный формой 1, из 2й формы?


 
No_Dead ©   (2008-06-13 23:28) [1]

а разве не пофик какой формой будет создан ини?
вы ж с файлом работаете%>


 
Gerk   (2008-06-13 23:33) [2]

При попытке записи из 2й формы вылетает с ошибкой, может забываю что? )


 
Renegat   (2008-06-13 23:36) [3]

Без кода ответ неопределён. Показывайте где там у вас что.


 
DVM ©   (2008-06-13 23:38) [4]


> Gerk   (13.06.08 23:33) [2]

судя по номеру той ошибки что у вас вылетает, проблема в 17 строке вашего кода


 
No_Dead ©   (2008-06-13 23:41) [5]

в форме1

procedure TForm1.Button1Click(Sender: TObject);
var
ini: TIniFile;
begin
Ini:=TiniFile.Create(extractfilepath(paramstr(0))+"abcd.ini");
ini.WriteString("id"+form1.caption,"task", form1.Caption);
ini.free;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
form2.show;
end;


в форме 2
procedure TForm2.Button1Click(Sender: TObject);
var
ini: TIniFile;
begin
Ini:=TiniFile.Create(extractfilepath(paramstr(0))+"abcd.ini");
showmessage(ini.ReadString("idForm1","task","default"));
ini.free;
end;


работает все


 
Gerk   (2008-06-13 23:46) [6]

В 1й форме:
procedure TForm1.FormCreate(Sender: TObject);
begin
GetDir(0, IniPath);
IniFile:=TIniFile.Create(IniPath + "\bd.ini");
end;

procedure TForm1.FormShow(Sender: TObject);
begin
Form2.CheckBox2.Checked := IniFile.ReadBool("Key", "K2", false);
IniFile.Free;
end;


во 2й форме тоже самое, за исключением других значений, и запись в файл на FormClose.


 
Gerk   (2008-06-13 23:58) [7]

Перепутал )

В 1й форме:
procedure TForm1.FormCreate(Sender: TObject);
begin
GetDir(0, IniPath);
IniFile:=TIniFile.Create(IniPath + "\bd.ini");
end;


procedure TForm1.FormShow(Sender: TObject);
begin
Form2.CheckBox2.Checked := IniFile.ReadBool("Key", "K2", false);
IniFile.Free;
end;


procedure TForm1.Button2Click(Sender: TObject);
begin
IniFile.WriteBool("Key", "K2", CheckBox1.Checked);
IniFile.Free;
end;


Во 2й форме:

procedure TForm2.FormCreate(Sender: TObject);
begin
GetDir(0, IniPath);
IniFile:=TIniFile.Create(IniPath + "\bd.ini");
end;


procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
IniFile.WriteInteger("Options", "S2", SpinEdit1.Value);
IniFile.Free;
end;


При попытке записи - вылет.


 
Renegat   (2008-06-14 00:02) [8]

Я так понимаю, IniFile - это глобальная переменная. Тогда на кой пересоздавать его 2 раза - при создании как первой, так и второй форм? + ещё удалять непонятно когда.

Рассмотрим такую ситуёвину: юзер открыл форму 1. Потом открыл форму 2. Потом закрыл любую и пытается что-то в инишник записать? Что он получает? Фигу =) Ибо при закрытии созданный класс был разрушен.


 
Renegat   (2008-06-14 00:07) [9]

Я к чему клоню. Лучше всего будет инициализацию/освобождение централизовать, а не размазывать по всему проекту какмасло ;)
Например, создание - только в OnCreate главной формы. А освобождение - только в OnClose в ней же.
Или как-то наподобие.


 
Игорь Шевченко ©   (2008-06-14 00:44) [10]


> При попытке записи - вылет.


Че за вылет ?


 
Германн ©   (2008-06-14 00:49) [11]


> Игорь Шевченко ©   (14.06.08 00:44) [10]
>
>
> > При попытке записи - вылет.
>
>
> Че за вылет ?
>

Профессиональный интерес?
:)


 
Игорь Шевченко ©   (2008-06-14 01:00) [12]

Германн ©   (14.06.08 00:49) [11]


> Профессиональный интерес?


Уже нету. Оно у автора сначала убивается, потом пишется. Неинтересно.


 
Германн ©   (2008-06-14 01:20) [13]


> Игорь Шевченко ©   (14.06.08 01:00) [12]

Я имел в виду термин "вылет". Он ведь используется не только в среде программистов. :)
Например http://yandex.ru/yandsearch?text=%E2%FB%EB%E5%F2


 
Игорь Шевченко ©   (2008-06-14 02:03) [14]

Германн ©   (14.06.08 01:20) [13]

у меня трактование этого термина однозначное :)


 
Германн ©   (2008-06-14 02:10) [15]


> Игорь Шевченко ©   (14.06.08 02:03) [14]
>
> Германн ©   (14.06.08 01:20) [13]
>
> у меня трактование этого термина однозначное :)
>

:)
Неужели в твоём ПО нигде не фигурирует термин "вылет"? Ну или "время вылета". Ну ес-сно помимо записи в логе?
:)


 
Игорь Шевченко ©   (2008-06-14 22:58) [16]

Германн ©   (14.06.08 02:10) [15]


> Неужели в твоём ПО нигде не фигурирует термин "вылет"? Ну
> или "время вылета". Ну ес-сно помимо записи в логе?
> :)


Неа. Не фигурирует. Вот дата рейса интересна, а время - не нужно по сути.


 
Германн ©   (2008-06-15 01:39) [17]


> Игорь Шевченко ©   (14.06.08 22:58) [16]

Ага-а-а.
Значит твоё ПО занимается в основном "бухгалтерией" авиаперевозок. И/или ведением БД и документации по произведенным, производимым или предстоящим аваиаперевозкам. Но не обеспечением функционирования терминалов аэропортов в RealTime.
:)


 
Игорь Шевченко ©   (2008-06-15 02:10) [18]

Германн ©   (15.06.08 01:39) [17]

Не дай Аллах мое ПО занималось бы чем-то с авиацией в Realtime.


 
Германн ©   (2008-06-15 02:59) [19]


> Игорь Шевченко ©   (15.06.08 02:10) [18]
>
> Германн ©   (15.06.08 01:39) [17]
>
> Не дай Аллах мое ПО занималось бы чем-то с авиацией в Realtime.
>
>

А не хочешь попробовать "заняться чем-то с авиацией в Realtime?
Ну разумеется через промежуточное, аппаратное звено?


 
Игорь Шевченко ©   (2008-06-15 14:20) [20]

Германн ©   (15.06.08 02:59) [19]


> А не хочешь попробовать "заняться чем-то с авиацией в Realtime?
>
> Ну разумеется через промежуточное, аппаратное звено?


Пассажиров жалко. Последний раз такими вещами я занимался в 1990-м году.



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

Форум: "Начинающим";
Текущий архив: 2008.07.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.008 c
2-1213609411
Степан
2008-06-16 13:43
2008.07.13
Программно поместить TWebBrowser


11-1190218398
Vladimir Kladov
2007-09-19 20:13
2008.07.13
Версия 2.80


2-1213166267
Amid
2008-06-11 10:37
2008.07.13
Веб Сервис на Делфи 7, клиент на С++Буилдер 6 ?????


2-1213603321
Dmitry
2008-06-16 12:02
2008.07.13
#13#10


15-1211669739
Kolan
2008-05-25 02:55
2008.07.13
Тут по телеку евровидение выиграли,





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский