كيفية عمل شاشة ترحيبية لبرامجكم في الدلفي how to create a splsh screen
بسم الله الرحمان الرحيم السلام عليكم و رحمة الله تعالى و بركاته في موضوع اليوم
سنتطرق لأمر مهم يزيد من جمالية البرنامج هو الشاشة الترحيبية او Splash
Sceen و الشاة الترحيبية عبارة
عن صورة تظهر لنا قبل بداية البرنامج تستعمل من أجل شيئين الأول التعريف بالبرنامج
أو الشركة و الثاني من أجل تحميل البرنامج و هذا للبرامج الكبيرة الحجم لكن كيف
نعملها في الدلفي هذا سؤال طرح علي و ها هو الحل ذا اماكم فقط باتباع الخطوات
التالية :
ملاحظة : النموذج الأول
هو الذي نعتبره النموذج الرئيسي و نعتبر أن النموذج الثاني هو الشاشة الترحيبية
لذا فلكل من أكمل مشروعه يقوم بالتعديل على النموذج الأول الخاص فقط و ينشأ نموذج جديد "في مثالنا
اعتبرناه النموذج2" نعتبره الشاشة الترحيبية
الخطوة 1 : إنشاء نموذج جديد
الخطوة 2 : إضافة الوحدة inifiles لقسم uses
الخطوة 3 : إضافة inifile: tinifile; إلى قسم private
الخطوة 4 : إضافة الوحدة 2 التي نعتبرها الشاشة الترحيبية إلى قسم uses الموجودة بعد implementation
الخطوة 5 : أضف مكون checkbox1 و label1 للنموذج 1
الخطوة 6 : في حدث onformcreate الخاص بالنموذج 1أكتب الكود
التالي :
procedure
TForm1.FormCreate(Sender: TObject);
var
Splash: Boolean;
begin
Inifile :=
TIniFile.Create(Changefileext(application.exename,' .ini '));
with Inifile do
try
Splash:=
ReadBool('ShowSplash','LastChoice', True);
Checkbox1.Checked
:= Splash;
if Splash then
begin
Sleep(1000);
Form2.Close;
Form2.Release;
end;
finally
Free;
End;
End;
|
الخطوة 7 : في حدث onclose أكتب الكود التالي :
procedure TForm1.FormClose(Sender:
TObject; var
Action: TCloseAction);
var
Splash: Boolean;
begin
Inifile := TIniFile.Create(Changefileext(application.exename,
'.ini'));
Splash := Checkbox1.Checked;
with Inifile do
try
WriteBool('ShowSplash','LastChoice', Splash);
finally
Free;
end;
end;
|
الخطوة 8 : أضف الوحدة IniFiles إلى النموذج الثاني الذي نعتبره النموذج الرئيسي
الخطوة 9: أضف المتغيرين التاليين "
الملونين بالأحمر "
var
Form2: TForm2;
Splash:
Boolean;
Inifile: TIniFile;
implementation
|
الخطوة 10 : أضف الكود التالي بعد {$R *.dfm} الموجودة تحت implementation
initialization
Inifile := TIniFile.Create(Changefileext(application.exename, '.ini'));
with Inifile do
try
Splash:=
ReadBool('ShowSplash','LastChoice', True);
finally
Free;
end;
if Splash then
begin
Form2 :=
TForm2.Create(nil);
Form2.Show;
Form2.Update;
end;
|
شرح الخطوات و الأكواد " الأوامر
المستعملة "
الخطوة
|
شرح
|
1
|
إنشاء النموذج الأول و
إذا كان مشروعكم اكتمل فلا داعي لعمل هاذا النموذج بل إضافة الأكواد إليه
|
2
|
اضفنا الوحدة Inifiles
للتعامل مع ملفات .ini
|
3
|
وضعنا المتغير inifile:
tinifile لكي يمكن استخدامه في
جميع إجراءات و توابع هذه الوحدة فقط
|
4
|
الربط بين النموذجين
" الذي تظهر فيه الشاشة الترحيبية و النموذج الذي نعتبره الأساسي"
|
5
|
checkbox1 من أجل حفظ خيار
المستخدم إذا كان يريد ان تظهر الشاشة مرة أخرى و مكون Label1 لكي نظهر فيه محتوى الترحيب و يمكن
استبداله بأي مكون آخر مثلا مكون الصورة
|
6
|
عند إنشاء النموذج
يتم عمل ملف Ini حيث يكون في مسار البرنامج الرئيس بالإضافة لأخد اسمه و بعدها
جعلنا قيمة المتغير Splash مساوية لقيمة checkbox1 و بعدها قلنا بأنه بعد مدة تقدر ب1000 يقوم
البرنامج بالخروج و تحديث النموذج 2
|
7
|
عندما
يخرج النموذج 1 يحفظ لنا قيمة checkbox1
|
8
|
أضفنا
الوحدة IniFiles للتعامل مع ملفات ini
|
9
|
عرفنا
المتغيرين لنتعامل معهما في البرنامج
|
10
|
Splash متغير يأخذ القيمة صح و التي مفادها أن
تظهر لنا الشاشة الترحيبية
|
الآن أترككم مع تحميل البرنامج
و السلام عليكم و رحمة الله تعالى و بركاته
merci, et c'est une bonne idée d'utiliser le fichier ini comme un fichier de parametre
ردحذف