PDA

View Full Version : طراحی فرم جهت ثبت برنامه ی شیفت ماهیانه ی پرسنل



Ishtar_4552
دوشنبه 19 فروردین 1392, 18:59 عصر
سلام دوستان
من در برنامه ام که تحت ویندوز هم هست.. لازمه که یک فرم برای ثبت شیفت ماهیانه ی پرسنل طراحی کنم.. توی ساختار طراحی فرمش ایراد دارم..
در ضمن این رو هم بگم که هر بار ، باید برای یک ماه شیفت رو به ازای هر شخص وارد کرد..
تصمیم گرفتم که دو تا دیتاگرید ویو توی فرم قرار بدم که یکی از اونها لیست پرسنل به همراه کد پرسنلی اونها رو نشون می ده
و یکی دیگر از اونها روزهای ماه رو که بسته به انتخاب ماه که ممکنه 30 روز یا 31 روز باشند رو نمایش میده
و جلوی تاریخ هر روز یک کمبوباکس و تکست باکس قرار داره که
کمبوباکس لیست شیفت ها رو نمایش می ده تا کاربر بتونه از طریق اون شیفت مربوطه رو وارد کنه و
تکست باکس هم مربوط به کد شیفت هست که کاربر بتونه داخل اون کد شیفت رو وارد کنه..
عکس فرم رو در زیر قرار دادم :

102535

حالا سوالاتی که برام پیش اومده:
1- بطور پیش فرض برای هر روز یک شیفت خاص انتخاب باشه که من هر کاری کردم نتونستم کاری کنم که موقع تغییر ماه ، هر کمبوباکس به طور پیش فرض یک انتخاب اولیه داشته باشه ، یعنی اینکه اطلاعات بایند می شه ولی هیج گزینه ای به طور پیش فرض انتخاب نیست و باید خود کاربر گزینه ای رو انتخاب کنه..

2- با انتخاب یک شیفت، کد اون شیفت در تکست باکس کناری نشون داده بشه ولی نمیدونم چطور باید این کار انجام بشه ، باتوجه به اینکه کنترل های کمبو باکس و تکست باکس که گفتم در داخل خود گرید ویو و در حین اجرا ایجاد می شن ، چطور میشه این کار رو انجام داد؟

یک نمونه از این فرم رو هم برای دانلود قرار دادم.

102543

دانلود دیتابیس:
http://www.uplooder.net/cgi-bin/dl.cgi?key=a7e87eee674e88a1ea498d697e48dc92

setroyd
دوشنبه 19 فروردین 1392, 23:29 عصر
یه کاری کن تو یه timer بزار اول ماه عوض بشه این از اولی 2 ومی هم باید با کد نویسی بنویسی دیگه سادس کدش میشه همون ایندکس یا........... که خودت تعیین کنی .

Ishtar_4552
سه شنبه 20 فروردین 1392, 07:55 صبح
متاسفانه من جوابمو نگرفتم، توی طراحی فرم برای شیفت مشکل دارم ، توی برنامه های قبلیم هم همین ایراد رو داشتم ولی راه حل اصولی براش پیدا نکردم.. توی کنترل هایی که داخل گرید ویو و در حین اجرا ایجاد می شن یک سری محدودیت وجود داره که نمی تونم مثلآ توی رویداد selectchanged کامبو باکس ، دستور خاصی رو بنویسم.. در ضمن من می خوام برنامه طوری باشه که کاربر به سادگی بتونه اطلاعاتش رو وارد کنه..

ali_autumnal
چهارشنبه 21 فروردین 1392, 10:34 صبح
سلام

من ام دقیقا این مشکل رو تو طراحی یه پروژه داشتم. واقعیت اش مشکل حل نشد. یعنی نتونستم پاسخی واسش پیدا کنم.

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcomboboxcolumn.as px

Ishtar_4552
چهارشنبه 21 فروردین 1392, 13:36 عصر
می خوام به طور پیش فرض موقع باز شدن فرم، گزینه ی اول انتخاب باشه و در صورتی کاربر مایل بود شیفت رو تغییر بده یکی از شیفت های موجود در کمبوباکس رو انتخاب کنه، علاوه بر این در صورت تغییر شیفت ،عدد تکست باکس کناری هم عوض بشه.. همه ی این کنترل ها هم داخل گرید ویو هستند..

aslan
چهارشنبه 21 فروردین 1392, 14:28 عصر
سلام
فکر کنم به این صورت عملی باشه :
یک ستون مخفی ( مثلا ) تو گرید داشته باشی که برای هر سطر شماره ایندکس ( و یا کد آیتمهای کمبو و ........ ) پیش فرض کمبو داخلش باشه
و با پر کردن گرید و با در دست بودن شماره ایندکس و ..... آیتم مورد نطر رو نمایش بده

Ishtar_4552
چهارشنبه 21 فروردین 1392, 22:37 عصر
قطعآ باید یک راه بهتر هم باشه..

ali_najari
پنج شنبه 22 فروردین 1392, 11:07 صبح
دوست عزیز یکم صبر کنید من تا شب جوابتون رو با نمونه فرم میدم!

ali_najari
پنج شنبه 22 فروردین 1392, 22:27 عصر
دوست عزیز این هم از برنامه شما که بروز شد و هر 2کاری که میخواستید رو انجام دادم و واستون گذاشتم
البته باید بگم که اگر میخواهید که بعد از انتخاب ماه با هر فردی اطلاعات بروز بشود باید یکم کدها رو عوض کنید که در صورت تمایل اگر نتونستید بگید تا واستون کاملش کنم.