اصغر (پآچ)
جمعه 20 خرداد 1390, 11:14 صبح
سلام دوستان
من یه netbook دارم که رزولوشن های تعریف شده براش 600*800 و 600*1024 و 768*1024 و 864*1152 می باشند. رزولوشن نرمال و بهینه 600*1024 حالا من می خوام این رزولوشن رو به 768*1311 یا 768*1366 تغییر بدم جستجو کردم با این کد:
function TForm1.SetScreenResolution(Width, Height: integer): Longint;
var
DeviceMode: TDeviceMode;
begin
with DeviceMode do begin
dmSize := SizeOf(TDeviceMode);
dmPelsWidth := Width;
dmPelsHeight := Height;
dmFields := DM_PELSWIDTH or DM_PELSHEIGHT;
end;
Result := ChangeDisplaySettings(DeviceMode, CDS_UPDATEREGISTRY);
end;
و این کد:
function TForm1.NuevaRes(XRes, YRes: DWord):integer;
var
lpDevMode : TDeviceMode;
begin
EnumDisplaySettings(nil, 0, lpDevMode);
lpDevMode.dmFields:=DM_PELSWIDTH or DM_PELSHEIGHT;
lpDevMode.dmPelsWidth:=XRes;
lpDevMode.dmPelsHeight:=YRes;
NuevaRes:=ChangeDisplaySettings(lpDevMode, 0);
end;
برخورد کردم اما در این کدها به نظرم (اون طور که من تست کردم) فقط رزولوشن هایی رو می تونی استفاده کنی که برای کارت گرافیک یا LCD تعریف شده باشند. چطور می تونم رزولوشن رو خارج از محدوده تعریف شده بکار ببرم؟
راستی توی قسمت تغییر رزولوشن نوع LCD دستگاه رو Generic Non-PnP Monitor تشخیص داده و در قسمت تنظیمات مانیتور تیک Hide modes that this monitor cannot display غیر فعاله و تنها فرکانسی که در قسمت Screen refresh rate موجوده 60Hertz است. چطوری میشه LCD دستگاه رو درایورش رو پیدا کنم؟
ممنون و موفق و موید باشید
من یه netbook دارم که رزولوشن های تعریف شده براش 600*800 و 600*1024 و 768*1024 و 864*1152 می باشند. رزولوشن نرمال و بهینه 600*1024 حالا من می خوام این رزولوشن رو به 768*1311 یا 768*1366 تغییر بدم جستجو کردم با این کد:
function TForm1.SetScreenResolution(Width, Height: integer): Longint;
var
DeviceMode: TDeviceMode;
begin
with DeviceMode do begin
dmSize := SizeOf(TDeviceMode);
dmPelsWidth := Width;
dmPelsHeight := Height;
dmFields := DM_PELSWIDTH or DM_PELSHEIGHT;
end;
Result := ChangeDisplaySettings(DeviceMode, CDS_UPDATEREGISTRY);
end;
و این کد:
function TForm1.NuevaRes(XRes, YRes: DWord):integer;
var
lpDevMode : TDeviceMode;
begin
EnumDisplaySettings(nil, 0, lpDevMode);
lpDevMode.dmFields:=DM_PELSWIDTH or DM_PELSHEIGHT;
lpDevMode.dmPelsWidth:=XRes;
lpDevMode.dmPelsHeight:=YRes;
NuevaRes:=ChangeDisplaySettings(lpDevMode, 0);
end;
برخورد کردم اما در این کدها به نظرم (اون طور که من تست کردم) فقط رزولوشن هایی رو می تونی استفاده کنی که برای کارت گرافیک یا LCD تعریف شده باشند. چطور می تونم رزولوشن رو خارج از محدوده تعریف شده بکار ببرم؟
راستی توی قسمت تغییر رزولوشن نوع LCD دستگاه رو Generic Non-PnP Monitor تشخیص داده و در قسمت تنظیمات مانیتور تیک Hide modes that this monitor cannot display غیر فعاله و تنها فرکانسی که در قسمت Screen refresh rate موجوده 60Hertz است. چطوری میشه LCD دستگاه رو درایورش رو پیدا کنم؟
ممنون و موفق و موید باشید