Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Вниз

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

 
!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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.051 c
14-1130186619
LordOfRock
2005-10-25 00:43
2005.11.20
Меня флудят :(((


9-1120860136
FRick
2005-07-09 02:02
2005.11.20
GLScene AVI Recorder


14-1130846083
Sergey_Masloff
2005-11-01 14:54
2005.11.20
В очередной раз про ECO


14-1130348890
Knight
2005-10-26 21:48
2005.11.20
Если кто-то будет в IRC-е... забегайте


4-1127291420
Som
2005-09-21 12:30
2005.11.20
Куда установлен виндовс





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский