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

Вниз

Видео режимы   Найти похожие ветки 

 
!Trinix ©   (2005-09-19 18:11) [0]

Уважаемые, мастера.
Помогите мне с кодом:
1) Мне необходимо определить возможные режимы работы монитора по вертикали и горизонтали отдельно, например так Edit1.Text := 1024; Edit2.Text := 800;
2) Так же помогите применить эти режимы к монитору, а после выключения программы вернуть старый режим.
Я вас очень прошу - помогите.


 
Delphi_is_cool ©   (2005-09-20 03:35) [1]

Для определения ширины и высоты:
Screen.Heigth
Screen.Width

Поищи в поисковике, там много найдёшь, хотя бы вот:
http://phorum.key.ru/viewtopic.php?p=224547


 
Delphi_is   (2005-09-20 03:37) [2]

Прошу прощенья, не Heigth а Height


 
Delphi_is_cool ©   (2005-09-20 03:37) [3]

Прошу прощенья, не Heigth а Height


 
Eraser ©   (2005-09-20 17:24) [4]


> !Trinix ©   (19.09.05 18:11)

EnumDisplaySettings


 
Grief ©   (2005-09-20 21:17) [5]

чтоб выставить разрешение и вернуть обратно - OpenGL и DirectX в помощь. Первое вродебы проще...


 
XProger ©   (2005-09-20 22:07) [6]

Grief, OpenGL ни о существовании монитора, ни о его разрешении понятия не имеет...

function glDisplay(Width, Height, BPP, Freq: integer): boolean;
var
dev  : TDeviceMode;
res  : DWORD;
bool : boolean;
begin
Result := false;
FillChar(dev, SizeOf(dev), 0);
dev.dmSize := sizeof(dev);
EnumDisplaySettings(nil, 0, dev);
with dev do
begin
dmPelsWidth        := Width;
dmPelsHeight       := Height;
dmBitsPerPel       := BPP;
dmDisplayFrequency := Freq;
dmFields := DM_BITSPERPEL or
            DM_PELSWIDTH  or
            DM_PELSHEIGHT or
            DM_DISPLAYFREQUENCY;
res := ChangeDisplaySettings(dev, CDS_TEST or CDS_FULLSCREEN);
if res = DISP_CHANGE_SUCCESSFUL then
 ChangeDisplaySettings(dev, CDS_FULLSCREEN);
end;

// случай с нуль-герцовкой для ЖК мониторов
if res <> DISP_CHANGE_SUCCESSFUL then
begin
bool := false;
if Freq > 0 then
 bool := glDisplay(Width, Height, BPP, 0);
if not bool then
 begin
 ChangeDisplaySettings(_devicemodeA(nil^), CDS_FULLSCREEN);
 Exit;
 end;
end;
Result := true;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.034 c
14-1130250617
Hamertime
2005-10-25 18:30
2005.11.20
Пррверьте пожалуйста есть ли ошибки


3-1128687489
alfa_star
2005-10-07 16:18
2005.11.20
E.Message под Linux


14-1130065131
nk
2005-10-23 14:58
2005.11.20
Ищу фильм, но не уверен в правильности названия...


2-1130596420
ruslan1
2005-10-29 18:33
2005.11.20
LPT порт


1-1130307574
DVM
2005-10-26 10:19
2005.11.20
Правильно ли я превел с С на Pascal?