PDA

View Full Version : سوال: ایجاد نرم افزار تجاری



ashe405
دوشنبه 26 تیر 1391, 10:03 صبح
سلام دوستان ما یه نرم افزار نوشیم که داری چندتا فرم واسه یه موسسه
نرم افزار های تجاری مانند ورد و... همون اول که اجرا میشه یه صفحه ماکزیمم داره و یه منو و هر کاری که انجام می دن داخل همون فرم انجام میشه اکثرا و هی پنجره پنجره برنامه باز نمی شه
حالا من می خواستم ببینم هنگام طراحی چطور سایز صفحه فرم هنگام design ماکزیمم بشه
و اگه تجربه یا ایده دارین در این کار منو راهنمایی کنین سپاسگزارم

کامبیز اسدزاده
دوشنبه 26 تیر 1391, 10:24 صبح
سلام دوستان ما یه نرم افزار نوشیم که داری چندتا فرم واسه یه موسسه
نرم افزار های تجاری مانند ورد و... همون اول که اجرا میشه یه صفحه ماکزیمم داره و یه منو و هر کاری که انجام می دن داخل همون فرم انجام میشه اکثرا و هی پنجره پنجره برنامه باز نمی شه
حالا من می خواستم ببینم هنگام طراحی چطور سایز صفحه فرم هنگام design ماکزیمم بشه
و اگه تجربه یا ایده دارین در این کار منو راهنمایی کنین سپاسگزارم

دوست عزیز شما باید ابتدا تنظیمات Form رو در قسمت Properties گزینه های Layout -> Windows State , Layout -> Start Position رو ابتدا تنظیم و سپس در داخل فرم خود از ابزارهای Containers که شامل Panel و FlowLayout Panel و .. هستند استفاده نمایید. و همچنین با استفاده از Panel و دیگر ابزارها میتوانید گزینه Dock را برای این ابزارها بر روی Fill قرار بدین تا از ابتدای شروع طراحی تمامی موارد یکسان و یکپارچه باشن.

برای Maxiumum شدن هم روی فرم Properties برید و گزینه Windows Size رو روی Maximum و Start Position رو روی Center قرار بدین.

ashe405
دوشنبه 26 تیر 1391, 11:02 صبح
دوست عزیز شما باید ابتدا تنظیمات Form رو در قسمت Properties گزینه های Layout -> Windows State , Layout -> Start Position رو ابتدا تنظیم و سپس در داخل فرم خود از ابزارهای Containers که شامل Panel و FlowLayout Panel و .. هستند استفاده نمایید. و همچنین با استفاده از Panel و دیگر ابزارها میتوانید گزینه Dock را برای این ابزارها بر روی Fill قرار بدین تا از ابتدای شروع طراحی تمامی موارد یکسان و یکپارچه باشن.

برای Maxiumum شدن هم روی فرم Properties برید و گزینه Windows Size رو روی Maximum و Start Position رو روی Center قرار بدین.
ممنونم

سلام شرمنده دوست من propertise فرم من نه Layout داره و نه Windows Size و نه Start Position شرمنده یا من بلد نیستم یا که نداره در ضمن من میخواستم در هنگام desige فرم ماکزیمم بشه تا بتونم درست موقعیت ایتم ها قرار بدم هنگام اجراشو بلدم ممنون

ashe405
دوشنبه 26 تیر 1391, 11:20 صبح
کسی نیس به این سوال من جواب بده دوستان
میخواستم در هنگام design فرم ماکزیمم بشه تا بتونم درست موقعیت ایتم ها قرار بدم هنگام اجراشو بلدم ممنون در خود برنامه هنگام برنامه نویسی می خوام فرم ام ماکزیمم بشه

کامبیز اسدزاده
دوشنبه 26 تیر 1391, 11:41 صبح
فرم شما چی هست ؟ مگه Windows Form نیستش ؟
هرچی باشه باید 100% در قسمت Properties و Form Layout این گزینه های باشن !!!

hamid_hr
دوشنبه 26 تیر 1391, 11:42 صبح
سلام
اگه تو peroperties فرمت خاصیت windowsstate رو در حالت Maximized قرار بدی مشکلت حل میشه

کامبیز اسدزاده
دوشنبه 26 تیر 1391, 11:43 صبح
ممنونم

سلام شرمنده دوست من propertise فرم من نه Layout داره و نه Windows Size و نه Start Position شرمنده یا من بلد نیستم یا که نداره در ضمن من میخواستم در هنگام desige فرم ماکزیمم بشه تا بتونم درست موقعیت ایتم ها قرار بدم هنگام اجراشو بلدم ممنون

برای ماکسیمم کردن فرمتون باید از قسمت Properties شاخه Form Layout گزینه Window State رو روی Maximum قرار دهید

ashe405
دوشنبه 26 تیر 1391, 11:54 صبح
دوستان من گزینه Window State رو روی Maximum قرار دهید هنگام اجرا فرم رو ماکزیمم می کنه ولی من می خوام در قسمت design این کار رو بکنم

http://www.pic.daneshju.ir/images/66201236267234433915.png

کامبیز اسدزاده
دوشنبه 26 تیر 1391, 12:29 عصر
دوستان من گزینه Window State رو روی Maximum قرار دهید هنگام اجرا فرم رو ماکزیمم می کنه ولی من می خوام در قسمت design این کار رو بکنم

http://www.pic.daneshju.ir/images/66201236267234433915.png

منظورتون رو متوجه نشدم یعنی میخواهید هنگامی که دارید طراحی میکنید Maximum ببینید محیط طراحیتون رو ؟
برای اینکار شما میتونید فرمتون رو بزرگتر کنید چون نمیشه که فول سایز کنی تو میحط ویژوال !!! سوال عجیبیه ! یجورایی باید محیط کارتون و فرمتون رو سفارشی کنید !

ashe405
دوشنبه 26 تیر 1391, 12:41 عصر
بله منظورم همون بود می خواستم ببینم می تونم فرم رو تو محیط design ماکزیمم کنم که جواب دادین ممنون درسته میشه فرم رو بزرگ و کوچیک کرد ولی واسه دقیق کار کنم برای گذاشتن ایتمهام نیاز داشتم که فرم ماکس بشه ولی مجبورم با panelها و dock استفاده کنم بازم ممنونم

کامبیز اسدزاده
دوشنبه 26 تیر 1391, 13:04 عصر
بله منظورم همون بود می خواستم ببینم می تونم فرم رو تو محیط design ماکزیمم کنم که جواب دادین ممنون درسته میشه فرم رو بزرگ و کوچیک کرد ولی واسه دقیق کار کنم برای گذاشتن ایتمهام نیاز داشتم که فرم ماکس بشه ولی مجبورم با panelها و dock استفاده کنم بازم ممنونم

والا تا جایی که من میدونم برای اینکه راحت بتونید تو محیط Design کار کنید باید محیط برنامه نویسیتون رو سفارشی کنید !
من برای اینکار یک مانیتور 20 اینچ دارم ! راهی به غیر این به نظرم نمیرسه !!! :لبخند:

ashe405
دوشنبه 26 تیر 1391, 13:45 عصر
یه سوال وقتی روی فرم کار کرده و هنگام اجرا فرم ماکزیمم میشه از سمت راست کشیده میشه فرم و باز میشه می خواستم ببینم راهی هس که از سمت چپ فرم بزرگ بشه کشیده شه
منظورم اینه که اگه یه تکس باکس داشته باشم وقتی فرم ماکزیمم میشه تکس باکس در سمت چپ می مونه و از سمت راست فرم بزرگ میشه نسبت به محیط design راهی هست که از سمت چپ فرم بزرگ شه؟

کامبیز اسدزاده
دوشنبه 26 تیر 1391, 14:22 عصر
یه سوال وقتی روی فرم کار کرده و هنگام اجرا فرم ماکزیمم میشه از سمت راست کشیده میشه فرم و باز میشه می خواستم ببینم راهی هس که از سمت چپ فرم بزرگ بشه کشیده شه
منظورم اینه که اگه یه تکس باکس داشته باشم وقتی فرم ماکزیمم میشه تکس باکس در سمت چپ می مونه و از سمت راست فرم بزرگ میشه نسبت به محیط design راهی هست که از سمت چپ فرم بزرگ شه؟

برای این کار شما باید کنترل ها رو دونه به دونه نسبت به Dock تنظیم کنید مثلا در داخل Panel کنترل TextBox دارید و میخوایین این نسبت به موقعیت تنظیم بشه شما میتونید روی کنترل Properties کنید و نسبت Dock رو روی Left , Right , Top , Buttom مشخص کنید :)

the king
دوشنبه 26 تیر 1391, 18:42 عصر
شما که نمی توانید پیشبینی کنید که کاربری که از برنامه شما استفاده می کنه مانیتور اش رو روی چه Resolution ای قرار میده. باید
فرم تون رو طوری طراحی کنید که اگر ابعاد فرم از اون چیزی که شما در نظر گرفته اید بزرگتر شد بدون نقص نشون داده بشه، در عین حال
اونقدر ابعاد فعلی رو بیش از حد بزرگ در نظر نگیرید که اگر مانیتور کاربر اون Resolution بالا رو پشتیبانی نکرد به مشکل بر بخوره.

یک حداقل ابعاد برای فرم تون در نظر می گیرید که در کل برنامه رعایت بشه، فرضا خودتون یک اصولی در نظر می گیرید که نرم افزار شما باید
در مانیتوری با حداقل Resolution ئه 1024x768 قابل استفاده باشه. ارتفاع رو هم کمی کمتر فرض کنید تا جا برای منوی ویندوز بمونه.
سپس در کل برنامه هیچ فرمی نسازید که اندازه فعلی اش از 1024x730 بیشتر باشه.
اما مشخصه های Anchor یا Dock کنترل ها رو تنظیم کنید و اگه لازم شد از کنترل هایی مثل TableLayoutPanel استفاده کنید طوری که با
بزرگتر شدن فرم از اندازه ای که در نظر گرفته اید، همه چی درست تغییر اندازه پیدا کنه، مگر اینکه ابعاد اون فرم ثابت باشه و مشخصه
MaximizeBox اش هم False باشه. فرم رو با بزرگ و کوچک کردن تست کنید تا مطمئن شوید که تنظیمات درستی بکار برده اید.

ashe405
سه شنبه 27 تیر 1391, 18:47 عصر
سلام دوستان
در راستای این کار من مجبور شدم یه tabcontrol کنترل استفاده کردم در آن حدودا 8 تا tabpage داره و هر کدوم حداقل یه جدول از دیتا بیس داره و کلی از کارای که میشه با پایگاه داده انجام داده توی هر tabpage استفاده کردم الان 5 تا از tabpage شا کدشونو نوشتم که حدودا 1600 خط شده حالا دو تا از tabpage اصلیم خوب کار میکنه و یکی دیگه از tabpage اصلی اصلا هنگ می کنه دوستان می تونین کمک کنین و که ببینم مشکل از کجاس سپاسگزارم در ضمن در کد نویسی از معماری سه لایه استفاده کردم و دیتابیسم هم از Microsoft SQL Server Database File (SqlClient) هس

samadblaj
سه شنبه 27 تیر 1391, 19:37 عصر
the king به تمامی نکتات اشاره کردن در همین رابطه یک کامپوننت هم وجود داره که الان حضور ذهن ندارم که کارش تطبیق رزلوشن فرم با مانیتور کاربر بود.

شما باید برنامه تون رو طوری طراحی کنید که تمامی ایتم ها و همینطور فرم در زمان اجرا به صورت یکسان اجرا بشه.

ashe405
سه شنبه 27 تیر 1391, 19:43 عصر
ممنونم دوستان یه اشتباه از خودم بود که دوستمون morika یه راهنمایی کردن متوجه اشکالم شدم
حواسم نبود توی اون دوتای tabpage های دیگه توی لودش یه flag گذاشته بودم چون بنا به هر دلیلی خودشو از یه بار بیشتر لود میکنه فراموش کرده بودم توی این سومی این کار رو انجام بدم که خیلی ممنون از تک تک راهنمایی های شما دوستانم

Mahmoud.Afrad
سه شنبه 27 تیر 1391, 19:44 عصر
برای اینکه کنترلها با تغییر اندازه فرم مکان و اندازه شون متناسب با اون تغییر کنه باید Anchor کنترل ها رو تنظیم کنید و یا از tablelayoutpanel استفده کنید که میتونید نمونه زیر رو ببینید. در این صورت نیازی نیست که فرم رو در زمان طراحی به حداکثر برسونید. کافیه یک حالت استاندارد در نظر بگیرید و طراحی کنید.

veniz2008
سه شنبه 27 تیر 1391, 20:35 عصر
من نمونه برنامه دوستمون رو دانلود کردم،همه چیز به سلیقه شما بستگی داره دوست عزیز،اگر کارت رو راه میندازه استفاده کن. من خودم به شخصه سایز فرم رو روی 600*800 میزارم و خاصیت تغییر سایز فرم رو false میکنم تا کاربر نتونه سایز رو تغییر بده.
موفق باشید.