Форум: "WinAPI";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];
ВнизИзменить свойство монитора Найти похожие ветки
← →
Goric © (2007-09-16 22:22) [0]Здраствуйте, Мастера!
Помогите решить трабл. Мне необходимо изменять свойства дисплея "Расширить рабочий стол на этот монитор". Определить с помощью функции EnumDisplayDevices текущее состояние получилось (проверяя на наличие флага DISPLAY_DEVICE_ATTACHED_TO_DESKTOP). Рассматривал функцию ChangeDisplaySettings, но как с ее помощью можно изменить состояние монитора на необходимое не совсем понятно. Спасибо.
← →
Nikfel © (2007-09-17 09:42) [1]Вот код. Источник не знаю и не проверял.
Изменение разрешения экрана
function SetFullscreenMode(ModeIndex: Integer):boolean;
var DeviceMode : TDevMode;
begin
with DeviceMode do begin
dmSize:=SizeOf(DeviceMode);
dmBitsPerPel:=16;
dmPelsWidth:=640;
dmPelsHeight:=480;
dmFields:=DM_BITSPERPEL or DM_PELSWIDTH or DM_PELSHEIGHT;
Result:=False;
if ChangeDisplaySettings(DeviceMode,CDS_TEST or CDS_FULLSCREEN)
<> DISP_CHANGE_SUCCESSFUL then
Exit;
Result:=ChangeDisplaySettings(DeviceMode,CDS_FULLSCREEN)
= DISP_CHANGE_SUCCESSFUL;
end;
end;
procedure RestoreDefaultMode;
var T : TDevMode absolute 0;
begin
ChangeDisplaySettings(T,CDS_FULLSCREEN);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if setFullScreenMode(1) then begin
sleep(7000);
RestoreDefaultMode;
end;
end;
← →
Goric © (2007-09-17 11:45) [2]В том-то и дело, что разрешение экрана изменить можно, но как этот экран "примонтировать" к общему рабочему столу по прежнему остается загадкой.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.034 c