PDA

View Full Version : تغییر سایز فرم و ابزار ها در سیستم عامل دیگر



davidrobert
شنبه 22 دی 1397, 15:21 عصر
سلام و خسته نباشید دوستان برنامه نویس بنده با دو تا مشکل مواجه هستم که یکی از این مشکلات که تصویر زیر مشاهده میکنید.
149583
این فرم و تمام فرم های دیگرش به صورت سالم اول نمایش داده میشود. ولی هنگامی که فرم به حالت Minimize و Restore باز میگرده چهره فرم به این حالت در میا آید.
149584
این یکی از مشکلات بنده هستش.
دومی مشکل برنامه من در 4 تا سیستم تحت شبکه در حال فعالیت هستش ولی از این 4 تا سیستم در حال شبکه دو تاشون همه ابزارهای بند رو درست نشان میده و هیچ ابزاری حرکت نکرده است ولی در دو سیستم دیگر که مانیتور و Resolution یکی نیست که از این مانیتور اونیکه همه ابزارها رو بهم ریخته نمایش میدهد با جفت سیستم که فقط مارک مانیتور فرق داره ولی هم سایز هستن اون دو تا که یکی هستش مارکش برنامه رو درست نمایش میده ابزارهاش رو ولی اونیکی همزان اون دو مانیتور ولی مارکش فرق میکنه به کل ابزارها جا به جا نشان میده و یک مانیتور 22 اینچ که بزرگتر از اون یکی ها داره باز resolution این مانیتور مثل همان 15inchخراب نشان میده و همه رو داخل خودش جمع میکنه نمایش میده یعنی سه تا مانیتور هم سایز که 15inch که داره دو تا درست نمایش میده ولی یکی خراب نمایش میده ابزار ها رو و یک مانیتور 22 اینچ مثل ماینتور 15 اینچ اینهم خراب نمایش میده ابزارها رو ولی من تو مانیتور 19 اینچ برنامه رو ساختم و ماندم دو تاش درست هستش و دو تا مشکل داره.
و از دوستان خواهش دارم راهی به ذهنشان میرسه بگویند تا بنده پیاده کنم که هم مینیمایز میشه فرم جمع نشه و هم تو هر مانیتور درست نمایش بده.

مهدی کرامتی
شنبه 22 دی 1397, 16:20 عصر
سلام

در فرم هایی که چنین مشکلی وجود داره پراپرتی AutoScaleMode فرم رو روی None قرار دهید.

davidrobert
شنبه 22 دی 1397, 16:34 عصر
سلام

در فرم هایی که چنین مشکلی وجود داره پراپرتی AutoScaleMode فرم رو روی None قرار دهید.

قرار دادم فرقی نکرد

alexmcse
شنبه 22 دی 1397, 17:43 عصر
این کد را تست کنید
private void Form1_MaximumSizeChanged(object sender, EventArgs e) {//سایز دلخواه بدهید
this.Size = new Size(100, 80);

}

private void Form1_MinimumSizeChanged(object sender, EventArgs e)
{
//سایز دلخواه بدهید
this.Size = new Size(100, 80);
}

one hacker alone
شنبه 22 دی 1397, 20:52 عصر
همین مسئله توی تغییر رزولیشن سیستم هم اتفاق میفته. راه حل برای اون چیه؟

Shadow_net
شنبه 22 دی 1397, 21:23 عصر
کامپوننت ReSize .Net رو تست کنید

davidrobert
دوشنبه 24 دی 1397, 15:58 عصر
سلام و خسته نباشید.
دوستان تصاویر مربوط به سیستم خودم و کاربر عکس گرفتم برای مشاهده.
این تصویر سیستم خودم هستش که همه ابزار ها Dock شده و در داخل Panel هستش از ترس اینکه بهم نخوره داخل Panel قرار دادم و Dock کردم که به تریب باشه و بهم نریزه.
149603
این تصویر در سیستم 15 این مشتری ام هستش که مانیتورش فرق میکنه چون در دو تا مانیتور 15 انیچ تصویر درست نشان میده. اما در مانیتور سوم که مارک مانیتور فرم میکنه و resolution مانیتور سوم و با اون دو تا مانیتور یکی نیست چون رزولیشن هم فرق میکنه در مانیتور سوم خراب میاره تصیر رو.
149604
اما الان در مانتیور 22 اینچ این صفحه درست نشان میده.
149605
ولی فرم دیگه رو بهم ریخته نشان میده طوری که ابزار ها زدن بیرون.
149606
الان تا یه خورده روی سیستم دوم با قرار دادن این تنظیمات تغییر کرد روی 22 اینچ کمی درست شد.
149607
فقط اینکه راهی باشه به کل فرم درست نشان بده سراغ دارید بگید ممنون میشم.

davidrobert
چهارشنبه 26 دی 1397, 18:23 عصر
سلام و خسته نباشید
دوستان عزیز کسی تنظیماتی دستوری سراغ نداره که ابزار و فرم باهم مرتب تو هرسیستم نمایش داده بیشن

ژیار رحیمی
چهارشنبه 26 دی 1397, 20:27 عصر
https://docs.microsoft.com/en-us/dotnet/framework/winforms/high-dpi-support-in-windows-forms
https://docs.microsoft.com/en-us/dotnet/framework/winforms/automatic-scaling-in-windows-forms

davidrobert
پنج شنبه 27 دی 1397, 18:38 عصر
https://docs.microsoft.com/en-us/dotnet/framework/winforms/high-dpi-support-in-windows-forms
https://docs.microsoft.com/en-us/dotnet/framework/winforms/automatic-scaling-in-windows-forms

سلام و خسته نباشید
دوست عزیز ویندوز مشتری 7 هستش و همین طور کارهای مربوط به AutoScale اول روی فونت بود که از این مورد درش آوردم ولی نوع های دیگه هم مشکل داره