پروژه ایجاد کنترل ورود خروج کاربران و نمایش صفحه شخصی آنان(دلفي)

  • 1389/3/21
  • سپهر خيري
  • 2

در مقاله قبل نحوه استفاده از دستورات شرطی و حلقه ها را توضیح دادیم حالا نوبت به پروژه ای کاربردی توسط ان دستوارت میرسد

برای اینکه بتوانیم ورود و خروج کاربران را کنترل و از ورود افراد غیر عضو و تعریف نشده جلوگیری کنیم ابتدا نیاز به دریافت نام کاربری و رمز عبور انان داریم پس طبق مقالات قبل دو عنصر ادیت را به فرم خود اضافه میکنیم و سپس یک کلید(button) را اضافه میکنیم تا دستوارت را در ان وارد کنیم

پس از اینکه از قسمت Object inspector  تغییرات دلخواه را روی نام و کادر ادیت اعمال کردیم 2 lable  به کنار هر ادیت اضافه میکنیم تا راهنمایی باشد برای محل صحیح نام کاربری و رمز ورود مانند عکس زیر:

عکس1:

حالا اولین فرم که محل وارد کردن اطلاعات میباشد را اماده کرده ایم (بهتر است مانند پروژه های قبل کلید EXIT  را نیز قرار دهیم )

حالا نوبت به دستوارت مربوط به چک نام کاربری و رمز ورود میرسد :
شما ابتدا نیاز به تعریف متغیر دارید تا نام کاربری و رمز ورود را در ان بریزید :
var a,b:string;

سپس مقداردهی انان :
a:=edit1.text;

b:edit2.text;

3 دستور بالا که در کلید مربوط نوشته میشود نام کاربری و رمز ورود مربوط را در 2 متغیر مقداردهی میکند

حالا نیاز به کنترل انان داریم پس از دستور مقایسه استفاده میکنیم مانند If یا Case

به دلیل محدود بودن دستور If  برای تعداد بالا و کد نویسی نامنظم تر بهتر است از دستور Case  استفاده کنیم :

Case A of:

Ali:If b=100 then form2.show else Showmessage(‘password is incorrect’);

Reza:if b=200 then form3.show else Showmessage(‘password is Incorrect’);

Hossein:if b:=300 then form4.show else Showmessage(‘password Is incorrect’)

Else showmessage(‘username iS incorrect);

روند بالا با استفاده از دستور Switch  میتواند ابتدا نام کاربری را مقایسه کرده (که در مثال بالا با 3 اسم علی رضا و حسین مشخص شده ) و اگر نام کاربری درست بود با یک دستور If  به سراغ رمز ورود رفته و انرا مقایسه میکند که در صورت غلط بودن پیغام ‘ رمز ورود اشتباه است ‘  را میدهد و در انتها اگر هیچکدام از موارد نام کاربری درست نبود پیغام غلط بودن نام کاربری میدهد(همانطور که در مقالات قبل گفته شد داخل دستور Showmessage  میتوان هر جمله ای نوشت)

عکس2:

حالا نیاز به فرم های جدید داریم تا دستوارت مربوط به فرمهای دیگر اجرا شوند ..

برای ایجاد فرم های جدید و پیوند انها به فرم اولیه ابتدا به منوی File رفته و سپس گزینه new  را انتخاب میکنیم و سپس فرم را انتخاب میکنیم ..نام پیش فرض این فرم form2  بوده و در این صورت دستوری مانند Form2.show  که در بالا گفته شد درست است ولی با تغییر نام فرم باید دستور Form2.show  نیز به نام دلخواه تغییر داده شود

پس از ایجاد 3 نوبت به استفاده از سایر دستوارت مقاله قبل در انان میرسد

برای کابرد اول لیست کردن اعداد مابین 2 عدد گرفته شده از کاربر:
برای این دستور و لیست شدن عناصر نیاز به عنصر جدید به نام Listbox  داریم که از منوی استاندارد قابل اضافه شدن به فرم است و با نام پیش فرض Listbox1 سپس با استفاده از تعریف متغیرها و حلقه For  میتوانیم اعداد مابین 2 عدد گرفته شده از کاربر را در لیست چاپ کنیم .

عکس3:

ابتدا دو متغیر را در کلید مربوط در فرم جدید تعریف میکنیم

Vari, a,b:integer;

A:=strtoint(edit1.text);

B:=Strtoint(edit2.text);

اعداد گرفته شده از کاربر در 2 متغیر ذخیره میشود

سپس ایجاد حلقه For:

For i:=a to b do

Begin

Listbox1.items.add(inttostr(i));

End;

عکس4:

دستور بالا ابتدا عدد گرفته شده از کاربر را در شمارنده حلقه ریخته و سپس شمارنده حلقه را در lisbox  چاپ میکند و نتیجه ان چاپ اعداد بین 2 عدد کاربر بوده که به نوبت در شمارنده حلقه ریخته شده و در listbox چاپ شدند

برای استفاده از دستورwhile  مثال بالا را با استفاده از دستور While  مینویسیم

While a<b do

Begin

Listbox1.items.add(inttostr(a));

a:=a+1;

end;

در دستور بالا تا زمانی که عدد اول به عدد دوم کابر نرسیده انرا افزایش داده و در سپس در listbox  مورد نظر چاپ میکند

استفاده از دستور If  در Radiobutton  ها :
تقریبا همه افرادی که با برنامه های کاربردی کامپیوتر اشنا هستند Radiobutton  هارا میشناسند .. عملکرد این گزینه برای اضافه یا برداشتن امکانات یا عملیاتی در یک برنامه میباشد ..

در این مثال نحوه تغییر رنگ صفحه و رنگ فونت برنامه را با استفاده از radiobutton ها بیان میکنیم :
پس از اضافه کردن radiobutton  روی ان 2 بار کلیک کرده و پس از وارد شدن به یونیت کد دستوارت زیر را وارد میکنیم :

If radiobutton1.checked then edit1.font.color:=clred else edit1.font.color:=clblue;

دستور بالا اگر گزینه مربوط تیک بخورد رنگ نوشته را تغییر میدهد(در ادیت 1) و اگر تیک برداشته شود با ابی تغییر میدهد ..

رنگ ها دارای اسم های خاصی در دلفی هستند که نام انها در object inspector  در قمست Color  قابل مشاهده میباشد

عکس5

برای تغییر دادن رنگ پیش زمینه فرم از دستور زیر استفاده میشود:
if radiobutton1.checked then form1.Color:=clred;

در مقاله بعد به کاربرد ارایه ها در دلفی میپردازیم ……………..

دیدگاه خود را وارد کنید
تعداد دیدگاه ها : 2 دیدگاه
  1. سلام ببخشید من این مقاله تعریف و کار با متغییر ها که کفته بودید را پیدا نکردم لطفا میشه آدرسشو برام بفرستید.خیلی ممنون.

  2. سلام من توی دلفی تا می خوام متغیر ها رو تعریف کنم از قسمت
    var a,b:string;
    ارور میده و نوار قرمز رنگ میده پوینتر موس هم بعد از var است
    لطفا راهنمایی کنید ممنون

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *