امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
splashدر دلفی
نویسنده پیام
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #1
splashدر دلفی
حتما با اجراي بسياري از نرم افزار ها متوجه شده ايد كه در ابتداي اجراي آنان يك فرم ظاهر شده و پس از چند لحظه بسته و نرم افزار اجرا مي گردد . به اين فرمها , فرم Splash گويند كه در ابتداي اجراي برنامه ها تا زمان بارگذاري كامل برنامه و اجراي آن ظاهر مي شوند و معمولا داراي توضيحاتي در مورد برنامه هستند نمونش همین دلفی خودمون. اگر شما هم مي خواهيد براي برنامه خود يك فرم Splash ايجاد كنيد مراحل زير را طي نماييد :

1- ابتدا يك فرم جديد به پروژه خود اضافه كنيد و اندازه آنرا به دلخواه تغيير دهيد . ( تا حدي كه براي يك فرم Splash اندازه مناسبي باشد. )

2- به آن فرم يك عنصر image از سربرگ Additional اضافه كرده و Align آنرا alClient بگيريد تا تمام فرم را بپوشاند.

3- تصوير مورد نظر خود را كه براي Splash طراحي كرده ايد , در مولفه image قرار دهيد . خاصيت Stretch آنرا نيز فعال كنيد تا تصوير كاملا هم اندازه مولفه image شود.

4- براي آنكه نوار عنوان فرم در بالاي فرم Splash ظاهر نشود , خاصيت BorderStyle فرم را در object inspectorبرابر bsNone بگيريد.

5- حال براي فرم Splash يك نام مناسب انتخاب كنيد . من نام آنرا SplashForm بگذارید .

6- بهتر است فرم Splash در وسط صفحه نمايش ظاهر شود . پس خاصيت Position آنرا برابر poScreenCenter كنيد.

7- هم اكنون به پنجره ويرايشگر كد رفته و در آن صفحه كد اصلي Project را باز كنيدبا زدن ctrl+f12 و انتخاب project1 ( نه كد Unit ) . كد پروژه را به صورت زير تغيير دهيد :
program Project1;

uses
Forms,
main in 'main.pas' {mainform},
splash in 'splash.pas' {splashform};

{$R *.res}

begin
Application.Initialize;
splashform:=tsplashform.Create(application);
splashform.Show;
splashform.Update;
Application.CreateForm(Tmainform, mainform);
splashform.Hide;
splashform.Free;
Application.Run;
end.

8- حتما جمله (Application.CreateForm(TSplashForm, SplashForm را از بلاك اصلي پروژه كه بصورت خودكار در آن درج شده , حذف كنيد.

توضيح كد برنامه : در واقع در ابتداي اجراي برنامه , Application با فرم اصلي اجرا نمي شود بلكه فرم Splash ظاهر شده و نمايش داده مي شود. حال Application مقداردهي شده و فرم اصلي برنامه ايجاد مي شود . پس از آنكه فرم اصلي ايجاد و كامل شد , فرم Splash مخفي و آزاد مي گردد . حال Application اجرا مي شود

هنگام ایجاد یك شیئ در زمان اجرا (Run-Time) كه از كلاس TControl مشتق شده مانند یك فرم (TForm) ، متد Create در انتظار یك پارامتر به عنوان "مالك" یا Owner كلاس هست در اینجا، پارامتر AOwner، مالك شیئ هست. مالك(Owner) فرم ، مسئول آزاد سازی حافظه تخصیص داده شده به شیئ فرم در موقع لزوم هست. زمانیكه مالك فرم از بین برود ، به صورت خودكار فرم نیز از بین می‌رود و این موضوع برای تمامی كلاسها صادق ست
. Application :
مشخص كننده یك متغیر عمومی از نوع كلاس TApplication هست و زمانی ایجاد می‌شود كه برنامه‌تان را اجرا می‌كنید و در زمان خاتمه برنامه نیز به همراه تمام اشیائی كه مالكشان هست از بین می‌رود. ايجاد و حذف آن بر عهده ی شما نيست و از اين بابت نگران نباشيد. اين كلاس و شيئ به ترتيب در يونيت Forms تعريف و در يونيت Controls ساخته می‌شود.كلاس TApplication هم يك كامپوننت هست اما در زمان طراحی نمی‌توانيد از آن استفاده كنيد. بعضی از ويژگی‌های Application را می‌توانيد مستقيماً در صفحه Application فرم Project Options تنظيم كنيد، برای مابقی تنظيمات هم، می‌بايست از كد استفاده كنيد.اینم ادرس مثالش
http://www.iranvig.com/4592.html
۲۳-شهریور-۱۳۸۶, ۲۲:۱۸:۲۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : zahed2009, ehsandabiri
veyskarami غایب
مدیر بازنشسته
*****

ارسال‌ها: 861
موضوع‌ها: 82
تاریخ عضویت: مرداد ۱۳۸۴

تشکرها : 477
( 2479 تشکر در 611 ارسال )
ارسال: #2
RE: splashدر دلفی
مرسی
بسیار کامل و مفید بود

۲۴-شهریور-۱۳۸۶, ۱۰:۱۶:۳۸
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Question [سوال] ساخت EDITOR مانند دلفی hameds606 3 1,463 ۱۱-خرداد-۱۳۹۸, ۱۰:۰۷:۲۳
آخرین ارسال: lord_viper
  دریافت اطلاعات از سخت افزار در دلفی m59alizadeh 6 7,169 ۰۶-آذر-۱۳۹۵, ۱۳:۰۱:۴۹
آخرین ارسال: lord_viper
  تبدیل کد به دلفی The.Ghost 2 3,691 ۱۶-فروردین-۱۳۹۴, ۲۲:۱۵:۰۴
آخرین ارسال: veyskarami
  ارسال ایمیل با دلفی h_mohamadi 13 10,453 ۱۴-آبان-۱۳۹۳, ۱۸:۰۰:۴۳
آخرین ارسال: babyy
  فیلم آموزش مدیریت استثنائات در دلفی بهروز عباسی 2 3,152 ۳۰-مرداد-۱۳۹۳, ۱۵:۵۳:۰۸
آخرین ارسال: veyskarami
  [سوال] ریجستری در دلفی spase 2 3,045 ۱۸-خرداد-۱۳۹۳, ۱۵:۵۶:۴۷
آخرین ارسال: veyskarami
  کامپوننت ترد در دلفی hesarkhani 2 3,701 ۰۲-اردیبهشت-۱۳۹۳, ۲۲:۰۸:۴۵
آخرین ارسال: The.Ghost
  سورس دلفی lord_viper 46 58,074 ۰۹-دى-۱۳۹۲, ۱۹:۳۸:۳۳
آخرین ارسال: بهروز عباسی
  [آموزشی] 6700 نکته و کد دلفی lord_viper 0 2,940 ۰۴-دى-۱۳۹۲, ۱۰:۰۴:۳۱
آخرین ارسال: lord_viper
  اخبار دلفی lord_viper 10 9,006 ۲۹-مرداد-۱۳۹۲, ۰۲:۰۳:۴۰
آخرین ارسال: veyskarami

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS