معلم دلفی

چهارشنبه، مرداد ۰۷، ۱۳۸۳

یک سایت خوب در مورد ترفندهای دلفی

http://Keyvan10.tripod.com/Delphi/index.htm
شما در این سایت می توانید ترفندهای زیادی را مشاهده کنید که همگی با زبان دلفی نوشته شده اند:
به دست آوردن مختصات ماوس در صفحه نمایش:
تغییر دادن مختصات ماوس:

جابجا کردن یک جسم با ماوس:

چگونه برنامه در حال اجرایی را ببندیم؟ :

جلوگیری از بستن برنامه توسط کاربر :

ترفندهای دیگر:

چگونه شکل یک Cursor را در یک TImage رسم کنیم؟

چگونه Resulotion مانیتور را تغییر دهیم؟

چگونه ماوس را پنهان و یا آشکار کنیم؟

تبدیل فرمت BMP به JPEG و فشرده سازی و ذخیره آن

چگونه کد HTML یک رنگ را از RGB به دست آوریم ؟

چگونه یک Canvas برای Desktop نسبت بدهیم و روی دسکتلپ کار کنیم؟

چگونه یک فایل را کپی کنیم؟

چگونه یک جسم در زمان اجرای برنامه بسازیم؟

چگونه از نشان دادن دکمه برنامه در TaskBar جلوگیری کنیم؟

چگونه نام کاربر را بیابیم؟

ساختن ShortCut از برنامه در زمان اجرا

چگونه از داخل برنامه منوی Start را باز کنیم؟

چگونه پنجره یک برنامه در حال اجرا را پنهان کنیم؟

چگونه پنجره یک برنامه در حال اجرا را جابجا کنیم؟

چگونه از داخل برنامه CD ROM را باز و بسته کنیم؟

چگونه عمل کلیک ماوس را شبیه سازی کنیم؟

چگونه فشار دادن و رها کردن کلیدهای کیبورد را شبیه سازی کنیم؟

چگونه کلیدهای Caps Lock,Num Lock, Scroll Lock را روشن یا خاموش کنیم؟

چگونه مانیتور را به حالت Stand By کنیم؟

چگونه از داخل برنامه EMail بفرستیم؟

و .........






شنبه، تیر ۲۷، ۱۳۸۳

یک سوال برنامه نویسی و جواب معلم دلفی

سوال :
من اخيرا شروع به برنامه نويسي در محيط دلفي 7 کرده ام (البته با کمي پيش زمينه در زبان سي پلاس پلاس که داشته ام)  سئوال من اين است:
بطور مثال سه تا Edit ايجاد کرده ام و ميخواهم بعداز زدن کليد Enter از Edit اول به Edit دوم و الي آخر بروم البته اينکار خودتان مستحضريد با کليد Tab شدني است ولي من نتوانستم با کليد Enter اينکار را بکنم. لطفا راهنمائي ام فرمائيد.
 
جواب : (معلم دلفی)
برای اینکار باید بر روی رخداد زیر برنامه بنویسید :
onKeyPress
برای هر کامپوننت می توانید اینکار را انجام دهید. کد زیر را در این رحداد برای هر کدام بنویسید :
این کد را برای اولین کامپوننت بنویسید :
If key=#13 then
Edit2.Setfocus
در خط اول تشحیص می دهید که آیا کلید Enter زده شده یا نه. در خط دوم با دستور SetFocus می توانید وضعیت فعال را به کامپوننت دیگر انتفال دهید.
برای هر کامپوننت اسم کامپوننت بعدی را برای رفتن بدهید.
در آخر هم همان کاری را که می خواهید انجام دهید برنامه اش را بنویسید.
سوالات خودتان در برنامه نویسی دلفی برای من بفرستید و من جواب آنرا برای شما می فرستم.

پنجشنبه، تیر ۱۸، ۱۳۸۳

برنامه نويسى مبتنى بر رويداد در وب

سخا روش - ASP.NET - با ارائه يک مدل برنامه نويسى مبتنى بر رويداد ، تحولات مهمى را در خصوص طراحى و پياده سازى برنامه هاى وب ، ايجاد نموده است . برنامه نويسى مبتنى بر رويداد ايده جديدى نبوده و تاکنون شاهد استفاده از آن در سيستم هاى متعددى بوده ايم. مثلا" بخش رابط کاربر( اينترفيس ) سيستم عامل ويندوز ، يک محيط مبتنى بر رويداد است که صرفا" پس از تحقق يک رويداد،عملياتى انجام خواهد شد .پس از بروز يک رويداد و تشخيص آن، برنامه مربوطه فعال و مسئوليت پاسخگوئى به رويداد را برعهده خواهد گرفت . مثلا" زمانى که بر روى يک آيکون موجود بر روى Desktop کليک نموده و يا منوى Start ، فعال مى گردد ، يک رويداد ايجاد و برنامه مرتبط با آن فعال مى گردد.ASP.NET با وضعيتى مشابه آنچه گفته شد با رويدادها برخورد مى نمايد .
در فرم هاى وب ASP.NET که مسئوليت ارائه بخش رابط کاربر برنامه هاى وب را برعهده دارند ، رويدادها داراى جايگاهى خاص بوده و به محض ايجاد يک رويداد ، کد مرتبط با آن اجراء مى گردد.با استفاده از امکانات ارائه شده در HTML ، امکان اجراى حجم اندکى از کدهاى نوشته شده سمت سرويس گيرنده نيز وجود خواهد داشت . ASP.NET با ارائه مفهوم جديدى با نام Postback ، اطلاعاتى اضافه را به منظور انجام پردازش هاى لازم براى سرويس دهنده ارسال مى نمايد . بدين ترتيب، پس از ايجاد يک رويداد ، اطلاعات مورد نياز به منظور پردازش رويداد مربوطه، براى سرويس دهنده ارسال مى گردد. ويژگى فوق ،پتانسيل هاى متعددى را در اختيار برنامه نويسان وب ، قرار مى دهد . مثلا" در موارديکه کاربران اقدام به درج داده در يک TextBox نموده و يا يکى از اقلام اطلاعاتى موجود در يک ليست را انتخاب مى نمايند ، امکان نگهدارى و بخاطر سپردن اطلاعات موجود در يک فرم وب در زمان حرکت بين صفحات متعدد ، وجود خواهد داشت.مدل برنامه نويسى مبتنى بر رويداد ارائه شده در ASP.NET ، صرفا" محدود به اين امکانات نبوده و مى توان کدهاى مورد نياز را در توابع و يا برنامه هاى جانبى مستقر و در زمان بروز يک رويداد، آنان را اجراء نمود.
در اين مقاله به بررسى موارد زير خواهيم پرداخت :

رويداد چيست ؟
مدل مبتنى بر رويداد چيست ؟
بررسى رويدادهاى عمومى ASP.NET
رويدادهاى HTML
رويدادهاى کنترل هاى سرويس دهنده ASP.NET
بررسى کنترل Button در ASP.NET
نحوه پردازش يک رويداد از طريق کدهاى نوشته شده سمت سرويس گيرنده
تاثير مدل برنامه نويسى مبتنى بر رويداد در ايجاد برنامه هاى وب
رويداد چيست ؟
به منظور آشنائى با مفهوم يک رويداد در دنياى برنامه نويسى ، اجازه دهيد با يک مثال در دنياى واقعى کار خود را آغاز نمائيم :
فرض کنيد، کارمند بخش فروش يک شرکت به منظور دريافت اطلاعات از دو روش تلفن و نامه الکترونيکى ، استفاده مى نمايد.به صدا در آمدن زنگ تلفن نشاندهنده تحقق يک رويداد بوده که مى بايست به آن پاسخ داده شود. کارمند مورد نظر ، بروز رويداد را تشخيص و با برداشتن گوشى تلفن و پس از آگاهى از نوع درخواست ، عکس العمل لازم را انجام مى دهد.( آگاهى از درخواست متقاضى ، ثبت سفارش ، ارسال کالاى مورد نياز ) .
کارمند مورد نطر، مى تواند از طريق Email نيز اخبارى را نظير سياست هاى فروش از مدير خود، دريافت نمايد. مثلا" مدير بخش مربوطه مى تواند با ارسال يک Email به وى اعلام نمايد که قيمت يک کالاى خاص افزايش يافته است. پس از ايجاد رويداد فوق ، کارمند مورد نظر مى تواند واکنش لازم به منظور برخورد با رويداد را با هر روشى که خود مى داند ، انجام دهد . مثلا" مى تواند با مشترى مورد نظر تماس گرفته و به وى بگويد : " متاسفيم ، شما مى بايست يک مبلغ اضافه ديگر بابت خريد اين کالا را پرداخت نمائيد " و يا مى تواند در پاسخ به مدير خود بگويد : " ما هم اينک نيز بابت فروش اين کالا پول زيادى را از مشترى گرفته و نيازى به افزايش قيمت کالا نمى باشد " . (نحوه برخورد با يک رويداد ، به نوع آن بستگى خواهد داشت ).

ادامه اين مقاله را در سايت سخا روش بخوانيد

پنجشنبه، تیر ۱۱، ۱۳۸۳

SQL Tutorial

SQL
Tutorial

کلیه افرادی که می خواهند با بانکهای اطلاعاتی برنامه نویسی کنند بایستی با زبان SQL آشنائی کامل داشته باشند.
سایت معرفی شده دارای رانهمای آموزشی مناسبی برای علاقه مندان این زبان است.
این آموزش بهمراه تعداد زیادی مثال ارائه شده که می تواند در کمترین زمان این زبان را به شما یاد بدهد.