قسمت چهارم


KeyPerview : اگر مقدار این خاصیت برابر True باشد از آن پس اکثر ضربه های کلید به جای آنکه ابتدا توسط عنصری که فوکوس روی آن است پردازش شود توسط رویدادهای مربوط به کلیدهای فرم پردازش می شود .
Left : این خاصیت مقدار تو رفتگی از سمت چپ صفحه نمایش را برای فرم تنظیم می کند .
Menu ‌: این خاصیت وقتی به کار می رود که یک نوار منو در بالای فرم خود ایجاد کنید و با استفاده از تنظیم خواص موجود در آن تنظیمات مربوط به منو انجام می گیرد . در ضمن در هنگامی که یک منو ایجاد شود به صورت اتوماتیک این خاصیت با نام منو تنظیم می شود . همچنین با استفاده از این خاصیت می توان مشخص کرد در موقعی که چند منو در فرم موجود است کدام نمایش داده شوند .
Name : با استفاده از این خاصیت می توان نامی برای فرم برای کار بر روی آن و دسترسی به آن در کدهای برنامه در نظر گرفت
ObjectMenuItem : این خاصیت لیستی از آیتم های موجود در منوی بالای فرم را نمایش می دهد .
ParentFont : این خاصیت تعیین می کند ، خاصیت رنگ فرم ، از رنگ تعریف شده در خاصیت رنگ خودش استفاده کند یا از همان رنگی که دلفی برای آن تعریف کرده (Parent) .
PixelsPerInch : این خاصیت مشخص می کند هر اینچ از فرم از چند پیکسل تشکیل شده است .
PopupMenu : این خاصیت برای تعیین منوی شناور (PopupMenu) استفاده می گردد که در فرم ظاهر می شود .
Position : این خاصیت راهی آسان برای تنظیم موقعیت مکانی فرم به دست می دهد .(poDesigned = فرم را در همان مکانی که در زمان طراحی مشخص ساخته اید قرار می دهد -- poScreenCenter = فرم را در مرکز صفحه نمایش کاربر قرار می دهد -- poDefaultPosOnly = باعث می‎شود که ابعاد فرم همان ابعادی باشد که تنظیم شده است ولی محل آن را دلفی تعیین می کند -- poDefaultSizeOnly = باعث می شود که مکان فرم همان جایی باشد که در موقع طراحی مشخص گردیده اما دلفی ابعاد آن را تغییر می دهد )
PrintScale : این خاصیت عمل چاپ اطلاعات روی یک فرم را آسان میسازد .(poNone = هیچگونه بزرگنمایی صورت نخواهد پذیرفت -- poPropotional = دلفی فرم به گونه‎ای مقیاس ‎بندی کرده تا اطلاعات چاپ شده و اطلاعاتی که دیده می‎شود ابعاد یکسانی داشته باشند --- poPrintToFit =مقیاس‎بندی طوری انجام می شود که فرم با اندازه صفحه چاپ هماهنگ باشد )
Scaled : اگر مقدار این خاصیت True باشد خاصیت PixelsPerInch عمل می نماید .
ShowHint : این خاصیت برای فعال کردن خاصیت Hint به کار می رود . اگر مقدار خاصیت برابر True باشد خاصیت Hint فعال است .
Tag :‌ از این خاصیت برای نگهداری عددی صحیح استفاده می شود که اطلاعاتی راجع به آن فرم است .
Top‌ : این خاصیت فاصله فرم با بالای صفحه نمایش را به پیکسل تعیین می کند .
VertScrollBar : این خاصیت برای تعیین نوع ScrollBar عمودی استفاده می شود .
|
|__ ButtonSize : این خاصیت اندازه کلید را تعیین می کند .
|__ Increment : این خاصیت مشخص می کند که اگر کاربر ScrollBar‌ را کلیک کند مکان نمای ماوس چقدر حرکت کند .
|__ Margin : فاصله ScrollBar را با عناصر فرم به پیکسل مشخص می کند .
|__ Psition : تعیین می کند شیء ScrollBar در کجا نمایش داده شود .
|__ Range : تعیین می کند نوار جابجایی (ScrollBar) در کجا نمایش داده شود .
|__ Visible : ‌این خاصیت برای قابل رؤیت بودن نوار جابجایی استفاده می شود .

Visible : اگر مقدار این خاصیت True ‌باشد فرم قابل رؤیت است در غیر اینصورت فرم غیرقابل رؤیت است .
Width‌ : این خاصیت عرض فرم را با حاشیه آن به پیکسل مشخص می کند .
WindowState : این خاصیت اندازه فرم را مشخص می کند .(wsNormal=در این حالت فرم به صورت حداقل و حداکثر نمی باشد -- wsMaximized , wsMinimized= به ترتیب مشخص می کنند که فرم به صورت حداقل و حداکثر نمایش داده شود)

*** کلیه خواص را می توان در حین اجرای برنامه نیز تنظیم کرد :


Form1.Caption := 'My Program' ;
Form1.Width := 150 ;
Form1.Visible := False ;
Form1.Position := wsMaximized ;
Form1.BorderIcons.biMaximize := False ;

* توجه داشته باشید که برای مقدار دادن به خواص با استفاده از کد باید بعد از نام فرم یا عنصر از یک نقطه و نام خاصیت موردنظر سپس علامت =: و در نهایت مقدار خاصیت را با توجه به نوع آن نوشته می شود .
* برای مقادیر رشته‎ا باید از یک جفت '' استفاده کرد .

ادامه در جلسه بعد ...

قسمت سوم

کامپوننت (کنترل) چیست ؟
کد نویسی هنر یک برنامه نویس است. ولی گاهی اوقات انجام یک پروژه بزرگ نیاز به کدنویسی زیاد و غالبا تکراری دارد که اینجا دیگه هنر برنامه نویس این است که بتواند از کدهای از پیش نوشته خود کمال استفاده را ببرد.
برنامه نویسان بزرگ برای این که کار دیگر برنامه نویسان را از بابت کدنویسی های زیاد و تکراری راحت کنند ،اقدام به جمع آوری تمام کدهای مربوطه برای انجام یک کار ، می کنند که در اصطلاح برنامه نویسی به این مجموعه ها کامپوننت گفته میشود.

طریقه نصب کامپوننت :
در دلفی امکان نصب چهار نوع کامپوننت می باشد ، که به قرار زیر هستند :

u نصب و کامپایل فایلهائی که از نوع pas. هستند. برای نصب این نوع کامپوننت باید این مسیر رو دنبال کنید:
Component-> Install Component

v نصب فایل ocx. (تمامی این فایلها خاصیت نصب رو دارند) و برخی از فایلهای dll. که به روشی خاص کامپایل شده اند. برای نصب این نوع کامپوننت این مسیر رو دنبال کنید:
Component-> Import AxtiveX Control

w نصب فایل bpl. ، که برای نصب این نوع کامپوننت باید این مسیر رو دنبال کنید:
Componet-> Install Packages

x اجرای فایل باپسوند DPK.

هر یک از کنترل ها دارای ویژگی هایی است که مشتمل بر [خواص ، متدها و رویدادها] می باشد .
- خواص مربوط به تنظیمات ظاهری و اجرایی هر کنترل می باشد .
- متدها دستوراتی است که بوسیله آن عملیاتی بر روی کنترل ها و برنامه اجرایی اعمال می شود .
- رویدادها دستوراتی است که در نتیجه تغییرات بر روی کنترل فراخوانی و انجام می شود .

** قبل از هر چیز به خواص و متدها و رویدادهای یک فرم می پردازیم :
ActiveControl = این خاصیت تعیین می کند که با فعال شدن فرم کدام کنترل بر روی فرم دارای فوکوس باشد .
Align = موقعیت و اندازه فرم را در هنگام نمایش دادن فرم نشان می دهد .[اگر این خاصیت بر روی alTop تنظیم شود در هنگام اجرا فرم در قسمت بالای صفحه نمایش و عرض آن تمام عرض صفحه را می پوشاند .]
AutoScroll = این خاصیت میله های مرورگر بر روی فرم را کنترل می کند .[در صورتی که این خاصیت بر روی True تنظیم شود در صورتی که اندازه فرم برای نمایش همه کنترل ها کوچک باشد میله های مرورگر بطور اتوماتیک نمایش داده می شوند .]
AutoSize = این خاصیت بیشتر در موقع طراحی برنامه عمل می کند به صورتی که طول و عرض فرم را به وسیله کنترل های موجود بر روی فرم تنظیم می کند .
BiDiMode = این خاصیت برای ترازبندی کنترل ها و متن و خاصیت کپشن فرم به کار می رود .[در صورتی که بر روی bdLeftToRight تنظیم شود ترازبندی از طرف چپ به راست فرم انجام می شود .]
BorderIcon = این خاصیت تعیین می کند که در زمان اجرا کدام دکمه های سیستم روی فرم ظاهر شوند .[این گزینه ها شامل منوی سیستم ، دکمه به حداقل رساندن ، دکمه به حداکثر رساندن و دکمه راهنما می باشد .]
BorderStyle = این خاصیت نوع لبه فرم را نشان می دهد . مقدار پیش فرض bsSizeable است که پنجره با قابلیت تغییر اندازه می باشد و مقادیر bsDialog و bsNone مربوط به پنجره هایی است که نمی توان اندازه آنها را تغییر داد .
BorderWidth = پهنای لبه های فرم را بر حسب پیکسل مشخص می کند .
Caption = متن عنوان فرم را مشخص می کند . این خاصیت در موقع تغییر آن عمل می کند و عنوان فرم را با متن جدید نشان می دهد .
ClientWidth و ClientHeight = با استفاده از این دو خاصیت می توان طول و عرض ناحیه کاری را مشخص نمود(منظور از ناحیه کاری فرم ، ناحیه‎ای داخل کادر است که زیر نوار منو قرار دارد) تنظیم این دو خاصیت منجر به تغییر اتوماتیک خواص Width و Height می گردد .
Color = رنگ سطح روی فرم را مشخص می کند . مقدار پیش فرض clBtnFace می باشد که رنگ سطح فرم را مطابق با رنگ تنظیمی پنجره های ویندوز مشخص می کند .
Constraints = این خاصیت برای تعیین حداکثر و حداقل طول و عرض فرم به کار می رود . با مقدار دادن به هر یک از خواص زیر مجموعه این خاصیت [MaxHeight , MinHeight , MaxWidth , MinWidth] اندازه فرم به این مقادیر محدود می شود .
Cursor = شکل اشاره گر ماوس را هنگامی که ماوس بر روی فرم حرکت می کند مشخص می کند .
DefaultMonitor = این خاصیت در یک محیط با چند مانیتور مثل ویندوز 98 تعیین می کند که فرم روی کدام مانیتور نمایش داده شود .
DockSite = این خاصیت مشخص می کند که فرم به صورت یک ظرف برای کنترل های جمع شدنی عمل کند .
Enabled = این فرم مشخص می کند که فرم در هنگام اجرا فعال باشد یا خیر .
Font = این خاصیت، فونت استفاده شده در فرم را تعیین می کند . مورد مهمی که باید به آن توجه کرد این است که کنترل- های روی فرم ، فونت آن را به ارث می برد .
FormStyle = این خاصیت وضعیت و نوع فرم را مشخص می کند . مقدار پیش فرض آن fsNormal است که فرم حالت عادی خود را دارد . با مقدار fsStayOnTop فرم همیشه روی صفحه قرار می گیرد .فرم های MDI باید روی fsMDIForm و فرم های فرزند MDI روی fsMDIChild تنظیم شوند .
Height = اندازه ارتفاع و عرض فرم را تنظیم می کند .
Hint = متن اشاره کوتاه (ToolTip) را مشخص می کند .
HorzScrollBar و VertScrollBar‌ = این خواص مقادیر خاص خودشان را برای کنترل عملیات میله مرور تنظیم می کند .
Icon = وقتی فرم در زمان اجرا نمایش داده شود و نیز وقتی که فرم به حداقل اندازه برسد شمایلی روی نوار عنوان مشخص می شود که این شمایل با این خاصیت مشخص می گردد .

قسمت دوم

متغیرها:

متغیرها نامهایی برای کلمات حافظه اند و محتویات آنها ممکن است در طول اجرای برنامه تغییر کند. برای نامگذاری متغیرها ، ترکیبی از حروف A تا Z , ارقام و خط ربط (-) استفاده می شود.

* نکته : دقت داشته باشید در نامگذاری متغیرها ، تفاوتی بین حروف کوچک و بزرگ نیست.
تعریف متغیرها :

منظور از تعریف متغیرها ، انتخاب نام و تعیین نوع آنهاست. در تعریف متغیرها از کلمه ی کلیدی Var استفاده می شود.
Var
;نوع آن : نام متغیر

مثال :

Var x: integer ch : char; f : real; st: string;j

ما در این مثال چهار متغیر را هم زمان تعریف کرده ایم.

در مثال بالا ، متغیر x از نوع صحیح ، ch از نوع کاراکتر ، f از نوع حقیقی و st از نوع رشته ای تعریف شده است.
مقدار دادن به متغیرها :
به دو صورت می توان به متغیرها مقدار داد :

u استفاده از دستور انتساب که با =: انجام می شود.

v با استفاده از دستورات ورودی.

مثال : برای متغیرهایی که در مثال بالا تعریف کردیم :
x:15 ; ch:='a'; f:= 15.51; st:= ' Ali';

ثوابت :
ثوابت مقادیری هستند که در برنامه وجود دارند و در طول برنامه تغییر نمی کنند . برای تعریف ثوابت از کلمه کلیدی Const استفاده می شود :

Const
مقدار = نام ثابت ;


عملگرها :
عملگر (Operator) نمادی است که عمل خاصی را انجام می دهد .

u محاسباتی : (+ , - , * , / , div , mod) .

v منطقی : (not , and , or , xor) .

*** عملگر not ارزش عملوندش را نقیض می کند . حاصل کار and وقتی ارزش درستی دارد که هر دو عملوند ارزش درستی داشته باشند. حاصل کار or وقتی نادرست است که هر دو عملوند ارزش نادرست داشته باشند و در بقیه حالات ارزش درستی دارد وحاصل xor وقتی ارزش نادرستی دارد که هردو عملوند یا ارزش درستی داشته باشند و یا ارزش نادرستی .

w بیتی : [(not=نقیض) ، (and=و) ، (or=یا) ، (xor=یای انحصاری) ، (shl=شیفت به چپ) ، (shr=شیفت به راست) ]

این عملگرها بیت به بیت بر روی عملوندهایشان عمل می کنند . بیت صفر دارای ارزش نادرستی و بیت یک دارای ارزش درستی است .

x رابطه ای : (< , => , > , =< , = , <> , (in=عضویت : در مجموعه ها تشریح می شود)).


توابع TypeCasting (تبدیل نوع) است. TypeCasting یعنی تبدیل یک نوع داده به نوع دیگر.

شما هر نوع داده ای را میتوانید به نوع دلخواه تبدیل کنید به شرطی که نوع داده مبدا با داده مقصد سازگاری داشته باشد.

در اینجا تعدادی از توابع TypeCasting مهم شرح داده میشوند.

String TypeCasting :

: شرح
یک رشته را دریافت میکند و به یک مقدار عددی صحیح تبدیل میکند StrToInt()
یک مقدار رشته ای را به مقدار منطقی تبدیل میکند StrToBool()
تبدیل می کند BCD یک مقدار رشته ای را به کد پیچ StrToBCD()
تبدیل می کند Currency یک مقدار رشته ای را به StrToCurr()
یک مقدار رشته ای را به تاریخ تبدیل میکند StrToDate()
یک مقدار رشته ای را به مقدار عددی اعشاری تبدیل میکند StrToFloat()
یک مقدار رشته ای را به مقدار عددی صحیح بلند تبدیل میکند StrToInt()
یک مقدار رشته ای را به زمان تبدیل میکند StrToTime()

Float TypeCasting :

شرح:

تبدیل می کند Currency یک مقدار عدد اعشاری را به FloatToCurr()
یک مقدار عددی صحیح را به رشته تبدیل میکند FloatToStr()

Integer TypeCasting :

شرح :

یک مقدار عددی صحیح را دریافت میکند و به یک رشته تبدیل میکند IntToStr()
یک مقدار یک عددی صحیح را به مقدار مبنای 16 تبدیل میکند IntToHex()

Other TypeCastings :

یک مقدار تاریخ را به رشته تبدیل میکند DateToStr()
یک مقدار زمان را به رشته تبدیل میکند TimeToStr()

در جلسه بعد به شرح کامپوننت و اشیاء و مشخصات آنها می پردازیم.