مشاهده نسخه کامل
: تعریف متغرهای عمومی
aliaghaaaaa
20-07-2010, 20:13
سلام.
من می خوام یه متغیر تعریف کنم که تو همه ی فرم های برنام قابل دسترسی باشه.
حتی به شکل زیر هم نوشتم ولی نشد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
مثلا من اگه 10 تا فرم داشته باشم می خوام اونو تو فرم 1 تعریف کنم و تو همه ی فرم ها قابل دسترسی باشه.
چجوری میشه؟
ممنون.
يه راه اينكه توي Module متغيير بصورت public تعريف كني
يه راه ديگم اينكه خارج تايع توي كلاس فرم1 بصورت public تعريف كني بعد بصورت زير بهش دسترسي داشته باشي
dim ob as new form1
ob.var
يه راه اينكه توي Module متغيير بصورت public تعريف كني
يه راه ديگم اينكه خارج تايع توي كلاس فرم1 بصورت public تعريف كني بعد بصورت زير بهش دسترسي داشته باشي
dim ob as new form1
ob.var
این مال vb هستش.تو سیشارپ میتونی تو فایل program از لیست فایلهای solution explorer یه متغیر internal تعریف و استفاده کنید. البته باید حتما به صورت static تعریف بشه :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
aliaghaaaaa
21-07-2010, 07:41
سلام.
خیلی ممنون از لطف شما
aliaghaaaaa
21-07-2010, 08:43
سلام.
این کار رو هم کردم.
ولی پیغام زیر رو میده:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
aliaghaaaaa
21-07-2010, 17:47
سلام.
چکار کنم؟
تو form1 نه. تو فایل Program.cs باید تعریف کنی. تو solution explorer هستش.
کلاس زیرو به پروژه اضافه کنید
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
حالا هر جایی می خواین از A استفاده کنید کافیه از کد زیر استفاده کنید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید
aliaghaaaaa
22-07-2010, 08:20
سلام.
ممنون.
امتحانش می کنم.
aliaghaaaaa
22-07-2010, 11:47
سلام.
تو form1 نه. تو فایل Program.cs باید تعریف کنی. تو solution explorer هستش.
منم تو همون program.cs نوشتم ولی نشد.
دوست عزیز آقای mahdis، این کدی رو که نوشتید باید تو program.cs بنویسم یا تو فرم 1؟
بعد اگه تو فرم 1 هست، تو کدوم قسمتش؟
ممنون.
وست عزیز آقای mahdis، این کدی رو که نوشتید باید تو program.cs بنویسم یا تو فرم 1؟
بعد اگه تو فرم 1 هست، تو کدوم قسمتش؟
کلاس زیرو به پروژه اضافه کنید
روی پروژه(توی Solution Explorer ) راست کلیک : Add -> Class
aliaghaaaaa
22-07-2010, 16:29
سلام.
ممنون از اینکه هر سوالی داشتم جواب دادید.
میشه لطف کنید و یه کمی در مورد کدهای زیر یه توضیحی بدبد؟ آخه من هیچ چیز در مورد کدهای زیر نفهمیدم.
ممنون.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
چندان چیز عجیب غریبی ندارد
اگر توجه کنید یه خصیصه استاتیک بنام Instance وجود دارد که که همین کلاس رو بر می گرداند و با توجه به استاتیکی بودنش شما می تونید بوسیله ی نام کلاس بهش دسترسی پیدا کنید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و چون کد بالا خود کلاس Singleton رو بر می گردونه بنابراین شما می تونید از خصیصه ها و متد های عمومی این کلاس به شکل زیر استفاده کنید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
-----------------------------------------------------------------------------------------------------------------
به شکل های ساده تری هم می شود کار شما را انجام داد اما استفاده از الگوی طراحی سینگلتون خوانایی کد رو بالاتر می بره و مهتر اینکه تضمین می کند که فقط یک شی از این کلاس ساخته شده و می توان دسترسی سراسری داشت.
البته من هم یک اشتباهی کردم که سازنده را یادم رفته خصوصی کنم . کد تصحیح شده :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید
aliaghaaaaa
22-07-2010, 19:01
دستتون درد نکنه.
من هر وقت مشکلی داشتم و کسی بلد نبوده شما جواب درست رو دادید.
امتحانش می کنم. ان شاءالله که جواب بده.
بازم ممنون.
aliaghaaaaa
09-08-2010, 16:55
سلام.
من این روش رو امتحان کردم ولی بازم نشد.
روش دیگه ای نیست که بشه باهاش این کارو کرد؟
راستی من از کدهای شما چیز زیادی نفهمیدم.
می خواستم اگه وقتش رو دارید خط به خط برام توضیحش رو بنویسید.
بعضی ها هم می گن میشه با اضافه کردن چند خط تو program.cs این کارو کرد ولی جواب درستی نگرفتم.
ممنون.
L u K e !
09-08-2010, 22:04
بیا
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام.
من می خوام یه متغیر تعریف کنم که تو همه ی فرم های برنام قابل دسترسی باشه.
حتی به شکل زیر هم نوشتم ولی نشد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدمثلا من اگه 10 تا فرم داشته باشم می خوام اونو تو فرم 1 تعریف کنم و تو همه ی فرم ها قابل دسترسی باشه.
چجوری میشه؟
ممنون.
سلام.
کدتون به این صورت تغییر بدید:31::
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید.
aliaghaaaaa
10-08-2010, 11:54
سلام.
من مثلا می خوام تو 10 تا فرم ثبت اطلاعات داشته باشم.
کدهای زیر باید تو همه فرم ها تکرار بشن:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
من می خوام کد ها رو فقط یه بار بنویسم و دیگه تو برنامه برای همیشه تعریف شده باشن.
من کدهای بالا رو تو program.cs نوشتم و همونجا تابع زیر رو هم نوشتم:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
بعد از تو یه فرم دیگه متغیر print_fi_update رو new کردم و توش مقدار ریختم. ولی دیگه sqlconnection خودم رو صدا نزدم چون یه بار تو program.cs اونو تعریف کردم. بعد با کد زیر تابع رو از همون فرم صدا زدم.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
ولی وقتی برنامه رو اجرا می کنم و تابع صدا زده میشه ارر زیر رو میده:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
چکار باید بکنم؟
ممنون.
aliaghaaaaa
11-08-2010, 16:29
سلام.
لطفا جواب بدین.
سلام از using استفاده کنید.
کد های زیر را داخل تابع بزارید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدبه این صورت:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدموفق باشید.
aliaghaaaaa
11-08-2010, 19:37
سلام.
ممنون که جواب دادید. اما میشه یه کمی هم در مورد استفاده از using توضیح بدین. اینکه مثلا تفاوت کد شما که از using استفاده کردید و کد من که بدون using هست چیه؟
و اینکه چه مواقعی باید از using استفاده کنیم؟
ممنون از لطف شما.
L u K e !
12-08-2010, 09:36
وقتی از using استفاده می کنی خودکار بعدش اون متغیر رو آزاد می کنه و از بین می بره
وقتی از using استفاده می کنیم که بعد از یه عملیاتی دیگه به اون متغیر ( محتواش ) نیاز نداریم
aliaghaaaaa
12-08-2010, 10:34
سلام.
ممنون.
aliaghaaaaa
12-08-2010, 11:15
سلام.
من الان کدهای زیر رو نوشتم ولی ارر میده.
البته کد ها رو تو program.cs نوشتم.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اررش هم اینه:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
راستی به دوتا کروشه بسته آخری هم گیر داده.
سلام.
لطفاً اون public static رو پاک کنید و از کدها در تابع استفاده کنید نه به صورت عمومی.
دقت کنید یه سری از کلاس ها از using پشتیبانی نمیکنند.
شما فقط اونایی خاصیت dispose دارن رو میتونید از using استفاده کنید.
موفق باشید:11:.
aliaghaaaaa
12-08-2010, 16:20
سلام.
بازم نشد.
اگه میشه ایمیلتون رو بدین تا پروژه رو ارسال کنم بهتون و اگه مشکلی نیست برام مشکلش رو حل کنید.
ممنون.:31::10:
سلام.
نیازی به این کار نیست....
امکان داره کسی پیدا بشه که همین مشکل شما رو داشته باشه میاد اینجا و مشکلش حل میشه.
این کلاس رو امتحان کنید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدمن معمولاً با این کلاس کار میکنم.
مشکلی داشتید در خدمتم:40:.
موفق باشید:11:.
aliaghaaaaa
13-08-2010, 11:59
سلام.
میشه در مورد استفاده اش یه توضیحی بدید؟
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
آدرس اصلی دیتابیس که خودتون میدونید برای ارتباط با دیتا بیسه.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یک تابع برای دستورات ویرایش و حذف و اضافه کردن داده...که کارتونو انجام میده.
مثلاً:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
میتونید باهاش عملیات جستجو رو انجام بدین و در دیتا گراید بریزید یا ازش استفاده کنید.
مقدار برگشتی از نوع System.Data.DataSet مثلاً:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
بقیشم که فکر نکنم به دردتون بخوره از همینا میتونید کلی استفاده کنید(البته وقت ندارم که توضیح بدم ببخشید.:40:).
موفق باشید:11:.
aliaghaaaaa
13-08-2010, 17:14
سلام.
دستتون درد نکنه.
خیلی توابع خوبی هستن.
تو پروژه ام ازشون استفاده کردم و جواب داد.
ممنون.:10::10::10::11::40:
aliaghaaaaa
13-08-2010, 17:19
سلام.
یه سوال داشتم و می خواستم به عنوان یه تاپیک جدید مطرحش کنم ولی چون درست نمی دونستم باید عنوانش رو چی بزارم از شما یه سوال کوچیک داشتم:
مثلا وقتی ما می نویسیم:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یا با using چیزهای دیگه رو صدا میزنیم، در اصل ما داریم چی رو صدا می زنیم؟
کتابخونه صدا میزنیم یا namespace یا چیز دیگه؟
ممنون.
شما در اصل یک فضای نام از یک کتابخانه دات نت را صدا میزندید به این منظور که میخواهید از کلاس های آن استفاده کنید و وقتی اینها را بالا بنویسید دیگه نیازی ندارید که همش بنویسید System.Data.SqlClient.SqlCommand و فقط مینویسید SqlCommand...
موفق باشید:11:.
aliaghaaaaa
15-08-2010, 11:35
سلام.
میشه لطف کنید در مورد کدهای زیر یه توصیح کوتاه بدید؟
اینکه چیکار میکنن و اساس کارشون چیه و کجاها استفاده میشن؟
ممنون.
1-
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
من اون قسمت set , get رو می خوام
2-
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
ممنون.
سلام
1)
در قسمت get مقدار فیلد _connectionString برگشت می شود
برای مثال در کد زیر مقدار فیلد _connectionString از قسمت get خصیصه ConnectionString برگشت داده شده و نهایتا به متغییر cs نسبت داده شده:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
در قسمت set مقدار جدیدی به فیلد _connectionString نسبت داده می شود
برای مثال در کد زیر مقدار فیلد _connectionString خصیصه ConnectionString با متغییر cs برابر شده:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
2)یک فرمان T-Sql را اجرا و تعداد ردیف های که تحت تاثیر این فرمان قرار گرفته اند رو بر می گرندونه
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.