PDA

View Full Version : سوال: نظر شما برای طراحی نرم افزار چیست؟



as987498749874
چهارشنبه 31 اردیبهشت 1393, 20:12 عصر
سلام دوستان
من در حال نوشتن یه برنامه هستم که بصورت متوالی کار میکنه بطور مثال ابتدا کاربر وارد فرم اصلی شده و کلیدی را می زند سپس فرم جستجوی اشخاص باز شده و شخص انتخاب می شود سپس وارد پرونده شخص شده و در آنجا بطور مثال وارد فرم امور مالی شخص می شود سپس تراکنش مالی را انتخاب کرده و روی کلید پرفراژ کلید می کند سپس فرم فیش 3 برگی یا 2 برگی باز شده و پس از انتخاب فرپ نمایش اطلاعات باز می شود.

تمام نرم افزار اینگونه کار می کند.

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

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

طراحی کاربری نرم افزار چگونه باشد تا جلوی باز شدن چند فرم جلوگیری بشه؟

مرسی

sa1378
چهارشنبه 31 اردیبهشت 1393, 20:55 عصر
یه کار هست اما اصلا بهینه نیست
میشه بگی یکی باز شد بقیه هم unload بشن

ولی اینطوری که شما گفتی فرمات زیادن
پس سرعت یک کمی میاد پایین

R2du-soft
چهارشنبه 31 اردیبهشت 1393, 21:01 عصر
به نظر من شما میتونی از دو روش استفاده کنی:
1- استفاده از کدی مانند کد زیر:


Form2.Show vbModal


که اگه فرم بسته نشه نمیشه با فرم های زیری کار کرد! که روش پیشنهادی من هست...

2-میتونی جایی از برنامه از متغیر استفاده کنی که زمانی که یک فرم باز شد اون متغیر 1 باشه و زمانی که فرمی بسته شد اون متغیر 0 .
برای باز شدن صفحات شرط بزاری که اگه اون متغیر 1 بود صفحه باز نشه و اگه 0 بود اجازه باز شدن داره.

as987498749874
چهارشنبه 31 اردیبهشت 1393, 22:25 عصر
به نظر من شما میتونی از دو روش استفاده کنی:
1- استفاده از کدی مانند کد زیر:


Form2.Show vbModal


که اگه فرم بسته نشه نمیشه با فرم های زیری کار کرد! که روش پیشنهادی من هست...

2-میتونی جایی از برنامه از متغیر استفاده کنی که زمانی که یک فرم باز شد اون متغیر 1 باشه و زمانی که فرمی بسته شد اون متغیر 0 .
برای باز شدن صفحات شرط بزاری که اگه اون متغیر 1 بود صفحه باز نشه و اگه 0 بود اجازه باز شدن داره.

دقیقا من از روش اول استفاده کردم اما یه مشکلی دارم که min کردن برنامه از بین میره چون چند فرم بازه و بسته نشده!!!!
و مشکل دوم چند فرم غیر فعال در صفحه نمایش هست که جذاب نیست.مخفی کردنش هم جالب در نمیاد.

R2du-soft
پنج شنبه 01 خرداد 1393, 15:33 عصر
یعنی چی min کردن برنامه از بین میره؟ منظورتو نفهمیدم!
واضح بگو تا جایی که بتونم کمکت میکنم

m.4.r.m
پنج شنبه 01 خرداد 1393, 19:05 عصر
شما از روش داس استفاده کن . کاربر گزینه مورد نظر برای عملیات رو انتخاب کن و وقتی عملی در حال انجام شدن هست دیگه نتونه کار دیگه ای انجام بده و برای نمایش فرم ها هم از روش form1.show 1 استفاده کن

as987498749874
پنج شنبه 01 خرداد 1393, 19:27 عصر
میشه بیشتر توضیح بدید؟

فرم های من در حال حاضر پشت سر هم باز میشن (mdi نیست) برای همین minimize کردن برنامه مشکل داره!!!!

vbhamed
پنج شنبه 01 خرداد 1393, 19:52 عصر
سلام

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

اما اگر اینطوری برنامتون شلوغ میشه کار هر قسمت رو در یک فرم جدا بنویسید خاصیت Border Style فرم 2 به بعد رو روی None بزارید و وقتی کار فرم 1 انجام شد با تابع API به نام SetParent می تونید فرم 2 رو درون فرم 1 قرار بدید درست مثل اینکه فرمی درون فرم MDI باشه ولی فرمها MDI نیستند و به همین ترتیب برای بقیه فرمها

همچنین می تونید در فرمهای 2 به بعد کل اشیاء رو داخل یک PictureBox قرار بدید و با تابع SetParent اون رو در موقع لزوم بیارید درون فرم 1
البته روش قبلی یعنی قرار دادن خود فرمهای بعدی درون فرم اول بهتره چون اینطوری به متدهای خود فرمها هم دسترسی دارید

ایلیا آخوندزاده
یک شنبه 04 خرداد 1393, 01:41 صبح
منم با تابع api موافقم اینطوری هم برنامت منظم میشه هم به خواستت می رسی.