PDA

View Full Version : تغییر رزولیشن مانیتور و به هم ریختن فرم



Batman
دوشنبه 21 بهمن 1387, 08:11 صبح
با سلام و خسته نباشید
زمانیکه برنامه رو توی یه سیستم دیگه باز میکنم تقریبا تمامی طراحی فرم به هم میخوره.
دلیلش هم اینه که من با مانیتور wide کار می کنم و رزولیشن مانیتور من 768*1280 هستش و توی بقیه سیستمها این رزولیشن 768*1024 هستش.
چجوری میتونم این مشکل رو رفع کنم؟آیا اصلا راهی داره یا باید هنگام طراحی فرم رزولیشن مانیتور خودم رو عوض کنم؟
با تشکر

e_q_sun
دوشنبه 21 بهمن 1387, 09:26 صبح
سلام
منم این مشکلو دارم
اگه کسی راهی بلده لطفا منو هم راهنمایی کنه.
احتمالا باید راهی باشه که برنامه در هر رزولیشنی حالت طبیعی خودش رو حفظ کنه

vcldeveloper
دوشنبه 21 بهمن 1387, 17:21 عصر
دلیلش هم اینه که من با مانیتور wide کار می کنم و رزولیشن مانیتور من 768*1280 هستش و توی بقیه سیستمها این رزولیشن 768*1024 هستش.
هر دوتا رزلوشینی که یکی هستند! احتمالا رزلوشن مانیتور واید شما 1440*900 هست.


چجوری میتونم این مشکل رو رفع کنم؟
قبلا چند بار درباره استفاده از خصوصیت Anchors مربوط به کنترل ها، و متد ScaleBy بحث شد. آن بحث ها را دنبال کردید؟

heilton
چهارشنبه 07 اردیبهشت 1390, 18:26 عصر
هر دوتا رزلوشینی که یکی هستند! احتمالا رزلوشن مانیتور واید شما 1440*900 هست.


قبلا چند بار درباره استفاده از خصوصیت Anchors مربوط به کنترل ها، و متد ScaleBy بحث شد. آن بحث ها را دنبال کردید؟
تغيير رزوليشن صفحه ويندوز در دلفی
بعد از نوشتن فقط توی فرم اکتیو اسم تابه زا فراخوانی کن

function SetDisplay1024x768: Boolean;
var
DevMode: TDeviceMode;
begin
EnumDisplaySettings(nil, 0, DevMode);
DevMode.dmFields := DM_PELSWIDTH or DM_PELSHEIGHT;
DevMode.dmPelsWidth := 1024;
DevMode.dmPelsHeight := 768;
Result := ChangeDisplaySettings(DevMode, CDS_UPDATEREGISTRY)
= DISP_CHANGE_SUCCESSFUL;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
SetDisplay1024x768;
end;

heilton.blogfa.com

tdkhakpur
جمعه 09 اردیبهشت 1390, 12:56 عصر
تغيير رزوليشن صفحه ويندوز در دلفی

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