Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.10.16;
Скачать: CL | DM;

Вниз

Максимальное разрешение экрана.   Найти похожие ветки 

 
eXAAAXe   (2011-06-25 21:47) [0]

Снова привет.
EnumDisplaySettings максимальное возвращает разрешение: 1440 x 1050

А тут:
http://market.yandex.ru/model-spec.xml?modelid=6100149&hid=91052
Максимальное 1440x900.

Кому верить?
В параметрах рабочего стола максимальное разрешения для выбора 1440x900.


 
Anatoly Podgoretsky ©   (2011-06-25 21:58) [1]

Верь 900


 
Rouse_ ©   (2011-06-25 22:08) [2]


> Кому верить?

Драйверу видеокарты...


 
Rouse_ ©   (2011-06-25 22:10) [3]

ЗЫ: бо если даже твой монитор не вытянет 1050, то раз она умеет делать - сделает через конвертацию, но правда с потерей производительности...


 
QAZ   (2011-06-25 22:43) [4]

а при чем тут видеокарта


 
Rouse_ ©   (2011-06-25 22:56) [5]

ну как-бы видережимы выдает она а не диспей, это о птичках :)


 
QAZ   (2011-06-25 23:01) [6]

так нужно максимальное моника


 
eXAAAXe   (2011-06-25 23:17) [7]

>Rouse_ ©   (25.06.11 22:56) [5]

Накодил след. процедуру.
Выкидывает "Дебаггер фаулт нотификатион".
Хотя функция загружается из ДЛЛ.
Работаю в Дельфи 7.


procedure GetDisplayResolutionMax(var W, H: LongWord);
var
 n                     : LongInt;
 DevMode               : TDeviceMode;
 EnumDisplaySettingsExA: function (lpszDeviceName: PAnsiChar; iModeNum: DWORD; var lpDevMode: TDeviceModeA; dwFlags: DWORD): BOOL; stdcall;
begin
 W:= 0;
 H:= 0;
 EnumDisplaySettingsExA:= GetProcAddress(GetModuleHandle("user32.dll"), "EnumDisplaySettingsExA");
 If not Assigned(EnumDisplaySettingsExA) then
 begin
   ShowMessage("!");
   Exit;
 end;

 n:= 0;
 while EnumDisplaySettingsExA(nil, n, DevMode, 2) do // EDS_RAWMODE.
 with DevMode do
 begin
   If (dmScale = 0) then // Отбрасываем повторные и лишние.
   begin
     If (dmPelsWidth  > W) then W:= dmPelsWidth;
     If (dmPelsHeight > H) then H:= dmPelsHeight;
   end;

   Inc(n);
 end;
end;



 
eXAAAXe   (2011-06-26 08:20) [8]

Помогите разобраться.


 
eXAAAXe   (2011-06-26 11:18) [9]

Даже если объявить EnumDisplaySettingsExA статичной, то функция вываливается.


 
Омлет ©   (2011-06-27 14:58) [10]

Хз. Может хочет название девайса?

И ты забыл, что брать надо пару значений. Поэтому у тебя выдает неверное максимальное. Вот рабочий код:


procedure GetMaxDisplayResolution(var W, H: LongWord);
var
 n  : LongInt;
 dm : TDeviceModeA;
begin
 W := 0;
 H := 0;
 n := 0;
 while EnumDisplaySettings(nil, n, dm) do
 begin
   with dm do
   begin
     If (dmScale = 0) then
     begin
       If (dmPelsWidth > W) then
       begin
         W := dmPelsWidth;
         H := dmPelsHeight;
       end;
       If (dmPelsWidth = W) and (dmPelsHeight > H) then
         H:= dmPelsHeight;
     end;
     inc(n);
   end;
 end;
end;


 
eXAAAXe   (2011-06-27 17:11) [11]


> Омлет ©   (27.06.11 14:58) [10]


Вот блин, я не углядел, спасибо. :)


 
eXAAAXe   (2011-06-27 17:25) [12]

Так получилось в итоге:

procedure GetMonitorResolutionMax(var W, H: LongWord);
var
 n      : LongInt;
 DevMode: TDeviceMode;
begin
 W:= 0;
 H:= 0;
 n:= 0;
 while EnumDisplaySettingsA(nil, n, DevMode) do
 with DevMode do
 begin
   If (dmScale = 0)      and // Отбрасываем повторные и лишние.
      (dmPelsWidth >= W) then
   begin
     W:= dmPelsWidth;
     H:= dmPelsHeight;

     If (dmPelsHeight > H) then H:= dmPelsHeight;
   end;

   Inc(n);
 end;
end;


 
Омлет ©   (2011-06-27 22:24) [13]

> eXAAAXe   (27.06.11 17:25) [12]

Неверно. Зачем правильный код сделал неправильным? Подумай над условными операторами.


 
eXAAAXe   (2011-06-28 14:10) [14]

ok.



Страницы: 1 вся ветка

Текущий архив: 2011.10.16;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.008 c
2-1308850168
Drowsy
2011-06-23 21:29
2011.10.16
Есть ли функция, возвращающая адрес колонки грида


2-1309002914
Тимофей Ю.
2011-06-25 15:55
2011.10.16
неправильно выбран тип числа


15-1308725956
SQLEXPRESS
2011-06-22 10:59
2011.10.16
декомпилировать приложение C#


15-1308653696
DVM
2011-06-21 14:54
2011.10.16
MD5 и WideString


1-1269120802
olookin
2010-03-21 00:33
2011.10.16
Обновление TChart для показа визуальных Parent-элементов