PDA

View Full Version : ذخیره ساعت در فرم



nasiiiiiii
جمعه 11 آذر 1390, 23:00 عصر
سلام دوستان
من دارم یه برنامه می نویسم که به محض اینکه برنامه load می شه یه فرم نمایش داده می شه که تاریخو تو یه تکس باکس نمایش می ده بعد وارد فرما بعدی می شم تو فرما بعدی یه اطلاعاتی رو یا وارد بانک می کنم یا از بانک حذف می کنم حالا سوالم اینه که چه طور می تونم همون تاریخی که تو فرم اولم نمایش داده می شه رو تو بانک ذخیره کنم تا بدونم اطلاعاتو چه موقع وارد ی حذف کردم؟؟؟؟؟؟؟؟؟؟؟؟؟؟

vb.net.33
جمعه 11 آذر 1390, 23:33 عصر
سلام دوستان
من دارم یه برنامه می نویسم که به محض اینکه برنامه load می شه یه فرم نمایش داده می شه که تاریخو تو یه تکس باکس نمایش می ده بعد وارد فرما بعدی می شم تو فرما بعدی یه اطلاعاتی رو یا وارد بانک می کنم یا از بانک حذف می کنم حالا سوالم اینه که چه طور می تونم همون تاریخی که تو فرم اولم نمایش داده می شه رو تو بانک ذخیره کنم تا بدونم اطلاعاتو چه موقع وارد ی حذف کردم؟؟؟؟؟؟؟؟؟؟؟؟؟؟

خوب مشکل شما تو بانک هست یا تو نوشتن زمان تو فرم؟

omidquest
شنبه 12 آذر 1390, 07:58 صبح
سلام

1-اون مقداري ر. كه ميخواي تو فرم جديد ازش استفاده كني از فرم اول پاس كن به فرم مقصد
2- يه راهنمايي ميكني دوست عزيز : منم تو برنامم همين مشكل رو دارم يعني ميخوام ساعت و يا تاريخ تغيير اطلاعات رو داشته باشم ولي يه سوال اگر كاربر تاريخ سيستمش رو عوض كنه (تاريخ برنامه هم عوض ميشه ) حالا راه چاره چيه؟؟ چطور ميشه از صحت تاريخ در سيستم كاربر مطمعن شد
ضمنا براي انتقال پارامتر اگر نمومه خواستي اين نمونه رو دانلود كن

nasiiiiiii
شنبه 12 آذر 1390, 09:18 صبح
تو هیچ کدوم مشکل من اینه که چه طور زمان نمایش داده شده تو فرم 1به فرم 3 :متفکر:پاس بدم:گیج: تا تو بانک ذخیره بشه؟؟؟؟؟؟؟؟

bahar_777
شنبه 12 آذر 1390, 09:58 صبح
[QUOTE=omidquest;1388045]سلام

1-اون مقداري ر. كه ميخواي تو فرم جديد ازش استفاده كني از فرم اول پاس كن به فرم مقصد

سلام من برنامه ي خودم رو براتون ميل ميكنم لطفا ببينيم چرا پاس نميشه
ممنون

Masterhame
شنبه 12 آذر 1390, 10:22 صبح
شما 2 راه برای این کار دارید:

1. ذخیره زمان توی فرم اول داخل یک متغییر Public Static و بعدش خوندن این اطلاعات توی فرم دوم
2. ارسال زمان با زدن دکمه باز شدن فرم دوم (همون فرم شماره 3 خودتون) و ذخیره اون توی یه متغییر موقت برای ارسال به بانک

دوستان همشون راه حل دوم رو پیشنهاد کرده بودن

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

روش اول: استفاده از متغییر استاتیک توی فرم اول

شما باید متغییر پابلیک استاتیک توی فرم اول به این روش ایجاد کنید:

public static DateTime X;

اسم متغییر رو X گذاشتیم.
همون لحظه که میخواید زمان رو توی تکست باکستون بریزید توی این متغییر هم بریزید. با دستوری مثل دستور زیر:

X=DateTime.Now;

اگر فرض کنیم اسم فرم اولتون Form1 باشه، کدی که برای دسترسی به زمان مذکور توی فرم دوم باید بنویسید به شکل زیر میشه:
Form1.X
حالا شما این رو هرجایی که بخواهید توی تمام پروژتون می تونید دسترسی داشته باشید. مثلاً می تونید توی ساختن یک Query برای ثبت کردن توی بانک اطلاعاتی یا نمایش توی یک لیبل از اون استفاده کنید. به عنوان نمونه کد زیر که توی فرم دوم نوشته میشه زمان ثبت شده رو توی یک لیبل نشون میده:
Label1.Text=Form1.X.ToString();
حالا شما بجای اینکه اون رو توی یک لیبل بریزید، بجاش توی ساختن Queryهای SQL ازش استفاده کنید.



روش دوم: (ارسال بصورت پارامتر یا متغییرهای ساده)

این روش یک مقدار پیچیده تر اما متعارف تر هستش
این بار بجای اینکه متغییر ذخیره زمان توی فرم اول باشه توی فرم دوم ساخته میشه و لحظه ای که شما میخواید یک متغییر از فرم دوم ایجاد کنید، مقدار تاریخ رو توی متغییر مربوطه قرار می دهید (یا همون ارسال می کنید!)

توی فرم دوم (همون فرم 3 خودتون) باید یک متغییر پابلیک به شکل زیر بسازید:
Public DateTime X;
دقت کنید که اینبار نیازی به استاتیک بودن نداره!

حالا توی فرم اول داخل دکمه ای که قرار باز کننده فرم دوم باشه چنین کدی رو می نویسید:
Form2 frm=new Form2();
frm.X=DateTime.Now;
frm.ShowDialog();

به این ترتیب زمان از فرم اول به فرم دوم منتقل شد
البته بجای انتقال مستقیم زمان می تونید یه زمانی که از قبل ذخیره شده یا توی یک متغییر دیگه ریخته شده رو ارسال کنید.


حالا توی فرم دوم به این شکل ازش استفاده میکنید:
Label1.Text=X.ToString();
یا بجای لیبل توی هر چیز دیگه که می خواید بریزید یا استفاده کنید.

اگه بازم متوجه نشیدید بگید تا بیشتر توضیح بدم. (البته فکر می کنم کافی باشه)

nasiiiiiii
یک شنبه 13 آذر 1390, 16:52 عصر
دوست عزیز از کمک شما ممنونم اما فکر کنم شما برنامه ها رو به زبان c# نوشتین چون من هر چی می نویسم error داره :ناراحت: خودم سعی کردم به زبان وی بی بنویسم اما نشد می شه راهنمایی کنید:خجالت::خجالت: