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

Вниз

Разрешение экрана   Найти похожие ветки 

 
sofi   (2006-03-27 16:50) [0]

Подскажите пожалуйста, функцию определения размеров экрана в дэлфи.


 
Рамиль ©   (2006-03-27 16:51) [1]

Screen.Width
Screen.Heigth


 
Сергей М. ©   (2006-03-27 16:52) [2]


> размеров экрана


В дюймах по диагонали ?
В попугаях ?

Или в каких единицах ?


 
sofi   (2006-03-28 08:20) [3]

Разрешение экрана в чём измеряется? в попугаях? ты Сергей М. если не знаеш то лучше не советуй какая функция.... а вот Рамилю выражаю благодарность!


 
Старик   (2006-03-28 08:26) [4]

А еще их можно изменять :)

unit SystemFeatures;

interface

uses Windows, Classes, SysUtils;

function ChangeDisplayMode(h_Wnd : HWND; Width, Height, BPP, Freq : integer) : boolean;

var
 ScrWidth  : integer = 800;
 ScrHeight : integer = 600;

implementation

function ChangeDisplayMode(h_Wnd : HWND; 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 := ChangeDisplayMode(h_Wnd, Width, Height, BPP, 0);
if not bool then
 begin
 ChangeDisplaySettings(_devicemodeA(nil^), CDS_FULLSCREEN);
 Exit;
 end;
end;

MoveWindow(h_Wnd, 0, 0, ScrWidth, ScrHeight, false);
Result := true;
end;

end.
Изменение размеров, полноэкранность/оконность, частота и др. приколы.


 
sniknik ©   (2006-03-28 08:35) [5]

> Разрешение экрана в чём измеряется? в попугаях? ты Сергей М. если не знаеш то лучше не советуй
в вопросе было не "разрешение", в вопросе было "размер экрана", а размер прогрограмно практически невозможно определить.
почуствуйте разницу...

правда озаглавлено разрешением... понять можно, но лучше всетаки не путать.



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

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

Наверх




Память: 0.48 MB
Время: 0.059 c
1-1141294068
caries
2006-03-02 13:07
2006.04.09
Как вычислить разницу в датах?


2-1142871605
{AleX}
2006-03-20 19:20
2006.04.09
ADO&amp;MySQL


1-1141772515
DiMonstr
2006-03-08 02:01
2006.04.09
Запуск второй копии программы


3-1139495221
antoxa2005
2006-02-09 17:27
2006.04.09
Возможно ли получить значение св-ва "Описание" таблицы Access


2-1143487831
EHOT
2006-03-27 23:30
2006.04.09
Ждущий режим