آموزش سی شارپ C# – بخش ۴۹
- مقدمه
در ادامه بحثهای فعلی ای که در رابطه با زبان برنامه نویسی سیشارپ داشتهایم، در بخش پیشین با متد Contains آشنا شدهاید؛ در این بخش، شما با متد جدیدی به نام IndexOf آشنا خواهید شد. پس با ما باشید.
- متد IndexOf
متد IndexOf می تواند زمانی مورد استفاده شما قرار گیرد که بخواهیم بررسی کنیم که آیا کارکتری در بین کارکتر دیگری وجود دارد یا نه. برای مثال، در نظر بگیرید که شما بخواهید یک ایمیلی که توسط فردی وارد شده است را بررسی کنید که آیا حاوی کارکتر @ هست یا نه؛ اگر وجود نداشت، شما می توانید برای کاربر پیامی صادر کنید تا ادرس ایمیل خود را به دلیل اشتباه بودن آن ، تصحیح کند.
به فرمی که در پیش داشته ایم، یک button و یک text box جدید اضافه کنید. مشخصه ی text مربوط به Text box را یک ایمیل وارد کنید. بر روی button خود دابل کلیک کنید تا وارد بخش کدنویسی آن شوید. کد ها را مطابق با تصویر زیر وارد نمایید :
اولین موردی که می بایست درباره آن توضیحاتی دهم، این است که IndexOf چگونه کار می کند. به این خط از کد دقت کنید:
int result = stringEmail.IndexOf(“@”);
متد IndexOf، مقداری از نوع int بر میگرداند. این شماره، محل قرارگیری کارکتر مورد نظر شما در کلمه ی وارد شده می باشد. در کد بالا، ما می خواهیم که کلمه ای را بررسی کنیم که در متغیری با نام stringEmail ذخیره شده است. ما در واقع می خواهیم بررسی کنیم و ببینیم که آیا متن ما حاوی @ می باشد یا نه! این مقدار در بین پرانتزهای مربوط به متد IndexOf قرار می گیرد. اگر که C# (سیشارپ) کارکتر مورد نظر را پیدا کند، محل قرارگیری آن را به شما خواهد گفت. این شما در نهایت در متغیری از نوع Int ذخیره شده که ما آن را با نام result ایجاده کرده ایم. اگر که کارکتری که شما به دنبال آن بودید در متن مورد نظر شما وجود نداشته باشد، متد IndexOf مقدار -۱ (منفی یک) را بر می گرداند.
کد شرطی ما (if) که در کدهای بالا می بینید، در حال بررسی مقدار result است. اگر که مقدار -۱ باشد، متوجه می شویم که کارکتر مورد نظر شما وجود ندارد، در غیراینصورت، کارکتر مورد نظر در محلی که در result ذخیره می شود، موجود است.
از برنامه ای که تهیه کرده اید یک اجرا بگیرید؛ بر روی Button جدیدی که ایجاد کرده اید کلیک کنید. نتیجه باید مشابه نتیجه پایین شده باشد:
اگر ایمیل وارد شده دارای کاکتر @ باشد:
سید ادامه بده.
PDF هم بزار لطفا.
ممنون
با سلام
اول بابت آموزش سی شارپ ، تشکر !
من نرم افزارای جالبی دیدم که با سی شارپ نوشته شده بودن ، مثلا یکیشون نرم افزار ضبط صدا بود .
خواستم بدونم شما مرجعی میشناسید که متدهای کتابخونه ها رو معرفی کرده باشه ؟
مثلا همین نرم افزار ضبط صدا رو میشه با چه متدی نوشت ؟
ممنون
سلام دوست عزیزم،
ممنونم از لطف شما، خواهش میکنم!
مرجع خاصی در ذهن ندارم! در رابطه با نوشتن یک نرمافزار ضبط صدا، احتمالاً از DirectX یا XNA Framework استفاده کرده است.
موفق باشید!
با سلام و تشکر فراوان از زحمت های شما
من یه سوالی دارم …یعنی یه برنامه ای میخوام بنویسم که خود اون نرم افزار بر روی مکان مشخصی از صفحه نمایش کلیک کند( و هم دابل کلیک)
و ما تعداد دفعات کلیک و مختصات رو به نرم افزار بدهیم تا نرم افزار بر روی آن کلیک کند
اگه راهنمایی کنید ممنون میشم
fox11101@yahoo.oc
واقعا ممنون دمت گرم عالی مثل همیشه خسته نباشی خدا قوت
سلام
فکر کنم مثالی که زده شد زیاد برای نمونه کدها مناسب نیست جون برای تست ایمیل شرایطی دیگری هم ملاک هستش.
ولی مفهوم IndexOf رو خیلی خوب بیان کردید.
ممنون
mhsmity@yahoo.com
سلام ببخشید من یه سوال فتوشاپی داشتم میخواستم بدونم چجوری میتونم یه برش بصورت رعد و برق در عکسم ایجاد کنم؟ ممنون میشم راهنماییم کنید
سلام دوست عزیزم،
لطفاً به عناوین مطالب دقت بفرمایید؛ بنده در فتوشاپ متخصص نیستم.
موفق باشید!
ممنون بابت زحماتتون
با سلام
بنده یهک سوال داشتم که شاید به این قسمت ها مربوط نباشه و شایدم من هنوز نرسیدم به قسمت های جلو ولی در هر حال میشه بدونم اگه بخوایم با C# نرم افزاری طراحی کنیم که اطلاعات کاربران رو ذخیره کنه و بتونیم در موارد نیاز اطلاعات کاربران رو بر اساس سال و … استخراج کنیم . میخواستم بدونم چه کار هایی باید بلد باشیم ؟ پایگاه داده هم نیازه ؟
میبخشید ولی تا چه قسمتی رو بخونم میتونیم یه چنین پروژه ای رو انجام بدم
ممنون از همه آموزش های عالی تون و وقتی که برای نوشتن و کاربر ها میزارید 😉
سلام دوست عزیزم،
شما میتوانید استفاده از دیتابیس Microsoft SQL Server رو شروع کنید و نحوهی کارکردن با آن در سیشارپ رو یاد بگیرید، خواهید توانست که اطلاعات کاربران را در دیتابیس ذخیهر کنید و بعدش هم فراخوانی کنید در مواقع نیاز.
موفق باشید!
سلام دوست عزیز واقعا خسته نباشید , کارتون عالیه
فقط تورو خدا منو نجات بدید من خیلی کلافه شدم به این دلایل
۱ – اصلا پی دی اف ۲۵ را پیدا نکردم , در قسمت ۲۵ شما پی دی اف ۲۴ رو گذاشتید , پس خود ۲۵ چی ؟!
۲- بخش ۴۵ رو بطور کلی پیدا نمیکنم چه رسد به پی دی اف ! حتی از طریق منوی آموزش و برنامه نویسی
۳ – این دو بخش ۴۷ , ۴۸ اصلا پی دی اف نداره
دستت طلا دوست کوشای من .
سلام دوست عزیزم،
من در اسرع وقت بررسی میکنم و نتیجه رو به اطلاع شما خواهم رساند.
موفق باشید!
سلام دوست عزیز , آقا فرمودید در اسرع وقت بررسی میفرمایید و جواب میدید … !
اون موارد که عرض کردم رو لطف کنید ممنون میشم
سید!! خسته نباشی ! این اخرین بخش سی شارپ بود؟؟؟؟؟؟؟؟؟؟؟؟؟
سلام دوست عزیزم،
نه دوست عزیز، اما متأسفانه برای چند هفته مشکلی داشتم که قادر به نوشتن بخشهای بعدی نبودم. انشاءالله از فردا مجدداً شروع خواهم کرد. برایم دعا کنید.
موفق باشید!
واقعا ممنون اما چرا اموزش ها انقدر کوتاه شده ؟
سلام دوست عزیزم،
متأسفانه برای چند هفته مشغلههای کاری زیادی داشتم که متأسفانه توانایی قراردادن آموزشها را نداشتهام. انشاءالله از فردا مجدداً شروع خواهم کرد
موفق و موید باشید!
سلام . با عرض تشکر از مطالب بسیار خوب سایت شما
ببخشید اگر بخواهیم پیغامی مثل مدل پیغام بالا به کاربر نشان دهیم ، با این تفاوت که پیغام ما در همان یکبار نمایش سه جمله در سه خط باشد ، چه تغییراتی باید انجام بدهیم ؟
الان پیغام شما در مثال بالایی یک جمله در یک خط است
ممنون از زحمات شما
salam ,,mamnoon az amozeshatoom,,age momkene linke ghesmate 16 ro bezariid,harchi migardam peidash nemikoonam
سلام دوست عزیزم،
خدمت شما: https://www.gooyait.com/1391/11/21/c-sharp-tutorial-part-16.html
سلام فکر می کنم منو یادتون باشه (تو بخش ۳۶ کامنت جنجالی گذاشته بودم). می خواستم از شما واقعن تشکر کنم به خاطر تلاش مستمر و کاری که دارین می کنین. امیدوارم هرجا هستین در پناه خدا موفق باشین و زندگی روی زیبای خودش رو به شما نشون بده. وجود جوون هایی مثل شما باعث افتخاره.
سلام دوست عزیزم،
خیلی ممنونم از نظر لطف شما، منم به داشتن افراد بافرهنگی مثل شما افتخار میکنم.
امیدوارم که هنوز مطالب رو دنبال کنید، چونکه آموزشها تا به اینجا ختم نشدهاند، انشاءالله از فردا بخشهای بعدی قرار خواهند گرفت.
موفق باشید!
سلام واقعا میخواستم ازت تشکر کنم. من و رفیقم میخواستیم بریم کلاس، ولی خب بحث مالی پیش اومد، نتیجتآ رفیقم تنها رفت. تا اینکه شما رو پیدا کردم. واقعا ممنونم.تا اینجا بخش۱۷ هستم، گام به گام دارم میام جلو فقط دوتا سوال داشتم
1- فرض کنید مثلا یه form داشته باشیم بعد یه button هم براش تشکیل دادیم، اگه بر روی button کلیک کنیم بره یه form دیگه.نمیدونم منظورم درست انتقال دادم یا نه. حالا من میخواستم بدونم چهجوری باید اینکار رو کرد؟ نمیدونم تو بخشهای آموزش هنوز بهش نرسیدم یا بعدا میخواید آموزش بدید.
2- یه سوال دیگه هم داشتم که آیا در مورد “کلاس” آموزش دادین یا نه؟
مرسی
سلام با اجازه از استاد محترم برای این کار شما باید دو تا فرم ایجاد کنید همون طور که فرمودید تو ی فرم یک که buttonگذاشتید روش دابل کلیک میکنید تا وارد کد نویسش بشید
مثلا نام فرم دو رو student اگر بخواهیم تو فرم یک وقتی دکمه رو باز کنیم به فرم شماره دو بره مینویسیم ;()student ob =new student
;()ob.showDialog
توضیح یک متغیر است که به فرم student دسترسی داره به جای ob می تونید هراسمی که دوست داشتین بزارین
خیلی ممنون از شما آقای ابراهیم و آقا/خانم مقدم.
بله درست شد. و با اضافه کردن این کد در ادامه کدها
;()this.hide
وقتی روی button کلیک شود به form2 میرود و form1 پنهان خواهد شد.
یه سوال دیگه هم داشتم که آیا اشیای form1 برای form2 قابل شناسایی است
یعنی مثلا اگه یه تکست باکس توی form1 داشته باشیم، form2 میتونه اونو بشناسه یا نه؟
مرسی
سلام دوست عزیزم،
ظاهراً یکی از دوستان خوبم پاسخ شما را دادهاند، امیدوارم که مشکلتون برطرف شده باشه.
متأسفانه (یا شاید هم خوشبختانه) هنوز به مبحث شیگرایی و Class نرسیدهایم. میتوانید با خیال راحت شروع کنید.
موفق باشید!
با سلام و کسب اجازه از آقای موسوی
شما باید ابتدا یک نمونه از فرم دوم در فرم اول ایجاد کنید به این صورت که پس از دوبار کلیک روی buttonدستورات زیر را تایپ کنید
form2 frm=new form2;
frm.show();
نکته۱:form2نام فرمی است که میخواهیم با کلیک روی button بالا بیاید شما میتوانید به جای آن نام فرم مورد نظر را قراردهید.
نکته۲:برای اضافه کردن فرم جدید به برنامه در قسمت سمت راست رویwindowes formکلیک راست کرده و از قسمت add کلمهform را انتخاب کنید.
امیدوارم راهنماییم مفید باشه.
با سلام
این آموزش ها ادامه پیدا نمی کنه ؟ حیف به خدا
سلام دوست عزیزم،
چرا دوست عزیز، انشاءالله از فردا مجدداً بخشهای بعدی را قرار خواهم داد. برای چند هفته مشغول کاری بودم که امکان نوشتن بخشهای بعدی را نداشتهام. با عرض پوزش.
موفق باشید.
سلام،بابت تمامی این فایل های آموزشی که گذاشته اید.ممنونم.
من پروژه ای دارم که طبق ان باید برنامه بنویسم که اطلاعات مربوط به کالاهای یک فروشگاه را وارد کند وتمامی اطلاعات مربوط به کالاها را نمایش دهد.ممنون میشم اگر در این مورد توضیحی دهید.
سلام دوست عزیزم،
اگرچه هدف من از این مقالات آموزشی، جواب دادن به سوالات خارج از موضوع نیست، اما تا جایی که در توانم باشه سعی میکنم در هر زمینهای کمک کنم! دقیقاً بفرمایید که مشکلتان در چه بخش(هایی) هست که بتوانم بهتر راهنمایی کنم.
موفق باشید!
با سلام و تشکر فراوان از زحمت های شما
من یه سوالی دارم …یعنی یه برنامه ای میخوام بنویسم که خود اون نرم افزار بر روی مکان مشخصی از صفحه نمایش کلیک کند( و هم دابل کلیک)
و ما تعداد دفعات کلیک و مختصات رو به نرم افزار بدهیم تا نرم افزار بر روی آن کلیک کند
اگه راهنمایی کنید ممنون میشم
fox11101@yahoo.oc
Eshoonam bezarinSalam age mishe bakhshhaye jadid o chan taye ghablio noskhe pdf
با سلام دستون درد نکنه. ممنون.
اگه امکانش هست اورلود شماره نه این تابع مخصوص قسمت StringComparison رو توضیح بدین
ممنون
سلام
دمت گرم خیلی باحالی
یه تحویلی بگیر
نا سلامتی بازدید کننده هستیم ما
سلام دوست عزیزم،
ما مخلص شما هم هستیم، ممنونم از لطفت.
با عرض سلام و خسته نباشید
من تا قسمت ۵۰ از اموزشc#رو تونستم اینجا دریافت کنم ایا از ۵۰ به بعد این اموزش تو ای سایت هست؟
سلام دوست عزیزم،
آموزشهای از یکجا به بعد بنا بر دلایلی متوقف شده است! بابت این مشکل از شما معذرت میخوام.
موفق و مؤید باشید!
با عرض سلام خدمت شما دوست گرامی آقای موسوی
بنده یکی از کسانی هستم که آموزش های شما رو دنبال می کنم و پیگیر مطالب جدید شما هستم.
من می خواستم بدونم که چرا فایل پی دی اف آموزش های شماره ۴۸ و ۴۹ و ۵۰ رو توی سایت قرار ندادین؟
لطفا فایل پی دی اف این آموزش ها رو هم توی سایت عالیتون قرار بدین.
متشکرم
سلام دوست عزیز و نازنینم،
انشاءالله اگر مشکلات بنده حل شد و فرصت کافیای برای من ایجاد شد، فایل PDF این بخشها رو آماده خواهم کرد و در اختیار شما قرار خواهم داد. آموزشها هم در صورت امکان مجدداًشروع خواهند شد.
موفق باشید.
با سلام و عرض تشکر فراوان
د.ست عزیز لینک قسمتهای ۴۳ – ۴۴ – ۴۵ -۴۶ -۴۷ -۴۸ و ۴۹ غیر فعال هستن
در صورت امکان نسبت به رفع مشکل اقدام نمایید
سلام خیلی ممنون بابت آموزشی که قرار دادید اگر فایل pdf آموزش این بخش و بخش های بعدی (۴۸,۴۹,……..)رو هم قرار بدید خیلی خوب میشه
با تشکر
قسمت ۴۳ تا ۴۸؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟!!!
سلام
بابت آموزش سی شارپ ممنونم
بعضی از لینک ها غیر فعال شده اند مانند:
جلسه ۴۷: انجام عملیات Trim
جلسه ۴۸: متد Contains
لطفا pdf رو هم برای باقی جلسات قرار بدید
آموزش ساده و قابل فهمی بود
لذت بردم
تشکر زیاد