آموزش ساخت مرورگر در سی شارپ

سلام دوستای گلم 

تو این آموزش می خوام با چند تا مطلب خیلی قشنگ تو سی شارپ آشناتون کنم !

ساخت یه مرورگر ساده :

یه پروژه از نوع windows form application ایجاد کن . داخل toolbox به دنبال شی web Browser بگرد ، آهان .... پیداش کردی ، حالا با کلیک و درگ بگذارش داخل فرمت .

از prop خاصیت Dock رو بگذار روی Bottom و url اونو هر آدرسی که خواستی بده اوکی الان ازش یه اجرا بگیر ( به اینترنت متصل باشیا !! ) اگه صفحه رو بزرگ کنی ارتفاع web Browser خیلی ضایعست پس با کد نویسی درستش می کنیم . روی فرمت کلیک کن و از رویداد ها گزینه ی Resize و حالا :

این عدد از صحیح و خطا بدست می یاد .

برگرد به فرمت و یه textbox و یه Button به نام GO بهش اضافه کن . می خوایم داخل این جعبه متنی آدرسی بنویسیم و با کلیک روی دکمه ی GO بریم به اون آدرس . پس در رویداد دکمه ی GO فقط کافیه از متد navigate استفاده کنیم و چیزی که داخل جعبه متنی رو به عنوان پارامتر بهش بدیم.

اما دیدی داخل مرورگرت آدرس رو کامل نمی نویسی و با اینتر کردن می ری به اون آدرس ؟ ببین منظورم اینه که مثلا به جای نوشتن www.yahoo.com می نویسی yahoo اوکی ؟

بیا اینو پیاده سازی کنیم . روی textbox کلیک کن و از event ها گزینه ی key Down رو انتخاب کن. ما می خوایم کلمه ی yahoo رو بنویسیم و زمانی که کلید های ctrl و enter رو می زنیم آدرس کامل نوشته بشه : www.yahoo.com

این کدشه :

حالا آدرس کامل شد ، من نمی خوام از دکمه ی GO استفاده کنم ، بلکه می خوام فقط enter رو بزنم پس تو همین رویداد این شرط رو می گذاری  :

می خوام عنوان صفحه با عنوان سایت اینترنتی یکی بشه ، یعنی به جای Form 1 مثلا باشه Google یا وقتی می ریم تو صفحه ی yahoo بشه Yahoo ، واسه این کار باید از Timer استفاده کنی ، از جعبه ابزار شی Timer رو انتخاب کن و بگذارش روی فرمت . از منوی prop اولا Interval شو 10000 می کنیم یعنی هر 10000 ثانیه یه بار این کد اجرا بشه و Enabled شو هم فعال می کنیم . روی timer دبل کلیک کن و این کد رو بنویس :

دو تا دکمه هم واسه Back و forward بگذار ، نگران نباش خودش دو تا متد آماده واسه این کار داره : GO Back و GO Forward

یه menu strip هم به فرمت اضافه کن واسه setting و Homepage داخل setting می خوایم امکان ذخیره کردن صفحه رو قرار بدیم ، باز خودش یه متد آماده داره ، Show save as dialog و داخل Homepage از کد Go home استفاده می کنیم .

دیگه ساده تر از این چی می تونه باشه ؟؟؟؟ اصلا یادم رفت از اجراش تصویر بگذارم ! 

اجرای فایل های صوتی ، تصویری در سی شارپ

پاسخ به نظرات خوانندگان 

سلام  

واسه این که بتونی فایل های صوتی و تصویری رو داخل سی شارپ اجرا کنی نیاز به ابزار windows media player داری پس با ورود به محیط toolbox در فضای خالی راست کلیک می کنی و Add new tab رو می زنی حالا یه اسم واسه این تب جدید انتخاب کن مثلا windows media player حالا در فضای خالی این تب راست کلیک کن و گزینه ی choose items رو انتخاب کن در این زمان یه پنجره باز میشه که با ورود به تب com components باید تیک windows media player رو فعال کرده و سپس OK کنی . حالا دیگه شی windows media player داخل toolbox فعال شده و می تونی با کلیک و درگ روی فرمت قرار بدی و از پنجره ی prop میشه خاصیت های اونو تغییر داد. 

اوکی حلا بیا یه برنامه ی ساده باهاش بنویسیم : این برنامه یه دکمه به نام نمایش داره و یه شی windows media player ، با کلیک روی دکمه ی نمایش کاربر می تونه فایل مورد نظرشو واسه play شدن انتخاب کنه .

-----------------------------------------------------------------------------------------------------------------------------------

صدایت در گوشم زمزمه می شود


و نگاهت در ذهنم مجسم …


ولی من تو را می خواهم


نه خیالت را ...

نصب برنامه های تحت ویندوز در لینوکس

پاسخ به نظرات خوانندگان 

سلام ! 

واسه این که بتونی برنامه های تحت ویندوز رو داخل Ubuntu لینوکس هم داشته باشی نیاز به نرم افزار هایی مثل play on Linux یا wine داری ، ما فرض می کنیم می خوای از play on Linux استفاده کنی بنابراین اول باید نصبش کنی واسه این کار برو به ubuntu software center و از لیست برنامه ها انتخابش کن و گزینه ی install رو بزن.

اوکی الان play on linux نصب شده ، اگه گزینه ی install رو بزنی لیست تمام برنامه های تحت ویندوز نمایش داده میشه ، هرکدوم رو که خواستی انتخاب کن و next رو بزن و دست آخر install . گاهی وقت ها واسه بعضی نرم افزار ها نیاز به CD شون هم میشه . 

ببخش بدون تصویره ! حال نداشتم تصویر بزارم ، تنبلیه دیگه ، پیش می یاد!! موفق باشی .....

----------------------------------------------------------------------------------------------------------------------------------

دلم یک کوچه می خواهد...

بی بن بست...

وبارانی نم نم...

و یک خدا 

اضافه کردن toolbox جدید به متلب

پاسخ به نظرات خوانندگان 

سلام ! 

ببین واسه اضافه کردن یه toolbox جدید به نرم افزار متلب اول اونو داخل پوشه ی toolbox از شاخه ی اصلی که نرم افزار رو نصب کردی کپی کن حالا از منوی File گزینه ی  set patch رو می زنی از پنجره ایی که باز میشه دو تا دکمه با عناوین  Add folder و  Add with sub folder رو می بینی ، می تونی دومی رو کلیک کنی ، حالا فولدر شامل toolbox رو انتخاب می کنی و دکمه ی save رو می زنی و در آخر close

 موفق باشی ...... 

-----------------------------------------------------------------------------------------------------------------------------------

خدایا.........

خواستم بگویم تنهایم

اما نگاهت.........لبخندت.....

مرا شرمگین کرد

چه کسی بهتر از تو   !!!

تفاوت بین الگوریتم Canny و الگوریتم sobel در پردازش تصویر

پاسخ به نظرات خوانندگان

سلام 

در مورد تفاوت بین الگوریتم sobel و canny پرسیده بودین ، ابتدا بهتره از help متلب استفاده کنین چون واقعا عالی توضیح داده ، یه سری مقاله در این رابطه آماده کردم می تونین دانلود کنین به این دو تا آدرس هم سر بزنین ، موفق باشین ......

دانلود مقاله

edge detection

canny edge detector

-------------------------------------------------------------------------------------------------------------------------

چه خوش خیال است ، فاصله را میگویم ، به خیالش تو را از من دور کرده

نمیداند جای تو امن است ، اینجا در میان دل من ...............

Edit text در GUI متلب

پاسخ به نظرات خوانندگان 

سلام ! شما در مورد  وارد کردن مقدار در یک جعبه متنی پرسیده بودین ، ببین تو gui متلب یه شی داریم به نام Edit text که از نوار سمت چپ انتخابش می کنی ، با دو بار کلیک کردن روی اون پنجره ی prop باز میشه و تو می تونی خاصیت های اونو تغییر بدی ، ما اینجا فعلا فقط خاصیت string اونو عوض می کنیم و هرچی داخلش نوشته شده رو پاک می کنیم . حالا  مثلا اسمش edit1 باشه . 

اوکی الان می تونی تو برنامه ات ازش استفاده کنی ، دو تا متد داریم به نام get و  set که با متد get می تونی هر خاصیتی از شی مورد نظر رو که خواستی( حالا می تونه رنگش باشه یا متنش یا هرچیز دیگه ) دریافت کنی و با متد set می تونی هر خاصیتی از شی رو که خواستی تغییر بدی . پس get واسه خوندن محتوای یه شی به کار می ره و set واسه تغییر دادن محتوا . 

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

ابتدا از جعبه ابزار یه Edit text با نام edit1 و یه push button به نام Apply رو فرمت قرار می دی . 

حالا داخل رویداد Apply : اول یه تصویر به نام I خونده میشه و از rgb به سطح خاکستری می ره . الان باید به کاربر اجازه بدیم مقدار دلخواهشو واسه آستانه در Edit text وارد کنه ، حالا تو فرض کن مقدار رو وارد کرده  پس باید محتوای داخل Edit text خونده بشه ، اوکی باید از دستور get استفاده کنیم ، این دستور می گه : از edit1 بخون محتوای string شو . 

محتوای Edit text خونده شده و داخل متغییر y قرار گرفته اما این محتوا string و ما نیاز به مقدار عددی داریم پس با دستور str2double به مقدار عددی تبدیلش می کنیم . 

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

------------------------------------------------------------------------------------------------------------------------------------------

وقتی با 1 انگشت به سمت کسی اشاره می کنی و مسخرش میکنی اگه خوب به دستت دقت کنی 3 تا انگشتت به سمت خودته.........