11-02-2009, 11:06 PM
السلام عليكم و رحمة الله و بركاته :
في الحقيقة أردت طرح إشكال حول الملفات Ini (بقسم الأسئلة) ، و أثناء الإعداد للسؤال أردت أن أفيد البعض من المبتدئين أمثالي ، بمعلومات أو ما أشبه حول ، حفظ إعدادات برنامج معين بملف ذو اللاحقة ini ، ثم يليها الإشكال_ إن شاء الله :
التعامل مع ملفات ini بالدلفي :
أولا يجب التعريف بقسم use باضافةوبما أن الملفات تحفظ بها اعدادات البرنامج ، فلابد من التخزين و القراءة ، و الصورتين أدناه تبينان ذلك :
![[صورة: 803563012.jpg]](http://www10.0zz0.com/2009/02/11/21/803563012.jpg)
و هذا مثال تطبيقي للاستخدام يشمل العناصر: Edit+Memo+CheckBox+Image
نضع زر لحفظ الإعدادات و آخر لجلب الصورة ، و كذلك لدينا كود بالحدث OnCreate للفورم :
ملاحظة : إذا لم يتم تحديد مسار الملف Ini فإنه سوف ينشأ تلقائيا بمجلد Windows / في قطاع الذي نصب فيه النظام.
إذا أردنا وضعه مع مجلد البرنامج و لا نعلم أين سيتم وضع هذا المجلد عند المستخدم فإننا نصيف :
في الحقيقة أردت طرح إشكال حول الملفات Ini (بقسم الأسئلة) ، و أثناء الإعداد للسؤال أردت أن أفيد البعض من المبتدئين أمثالي ، بمعلومات أو ما أشبه حول ، حفظ إعدادات برنامج معين بملف ذو اللاحقة ini ، ثم يليها الإشكال_ إن شاء الله :
قبل ظهور نظام الرجيستري المرفق بالويندوز و هو المسؤول على حفظ إعدادات النظام و بياناته كانت الأنظمة القديمة تعتمد على هذا النوع من الملفات ، أما الأن فيقتصر إستعمالها على حفظ إعدادت البرامج التي لا تحتاج للرجيستري
التعامل مع ملفات ini بالدلفي :
أولا يجب التعريف بقسم use باضافة
كود :
Uses ...., Inifiles ;![[صورة: 803563012.jpg]](http://www10.0zz0.com/2009/02/11/21/803563012.jpg)
و هذا مثال تطبيقي للاستخدام يشمل العناصر: Edit+Memo+CheckBox+Image
نضع زر لحفظ الإعدادات و آخر لجلب الصورة ، و كذلك لدينا كود بالحدث OnCreate للفورم :
كود :
[COLOR=Black] procedure TForm1.Button1Click(Sender: TObject)[/COLOR];
begin
with tinifile.create('D:\star.ini')do begin
writebool('Checkbox','CheckboxValue',checkbox1.Checked);
writestring('Edit','EditValue',edit1.Text);
writestring('Memo','MemoValue',memo1.Text);
writestring('img','imgValue',OpenPictureDialog1.FileName);
end;
[COLOR=Black] end;[/COLOR]
[COLOR=Black] procedure TForm1.FormCreate(Sender: TObject);[/COLOR]
begin
with tinifile.create('D:\star.ini')do begin
checkbox1.Checked:=readbool('Checkbox','CheckboxValue',false);
edit1.Text:=readstring('Edit','EditValue',edit1.Text);
Memo1.text:=readstring('Memo','MemoValue',memo1.Text);
img:=readstring('img','imgValue',img);
end;
image1.Picture.LoadFromFile(img);
[COLOR=Black] end;[/COLOR]
[COLOR=Black] procedure TForm1.Button2Click(Sender: TObject);[/COLOR]
begin
if OpenPictureDialog1.Execute then
Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
[COLOR=Black] end;[/COLOR]إذا أردنا وضعه مع مجلد البرنامج و لا نعلم أين سيتم وضع هذا المجلد عند المستخدم فإننا نصيف :
إقتباس : '\ini\star.ini..'

