C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Размер экрана / Система (OC) / Borland C++

Размер экрана

Автор(ы): kenai, OlegGG, trainer
Исходная ссылка: - - -

Как узнать высоту и ширину экрана в пикселях?
Для этого можно воспользоваться глобальным объектом Screen, при этом:
  Screen->Width - ширина;
  Screen->Height - высота.


Как сменить разрешение экрана?
DEVMODE dm;
dm.dmSize = sizeof(DEVMODE);
int index = 0;
while (EnumDisplaySettings(NULL, index, &dm))
{
  if (dm.dmPelsWidth == 800 && dm.dmPelsHeight == 600)
  {
    dm.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT;
    LONG result = ChangeDisplaySettings(&dm, CDS_TEST);
    if (result == DISP_CHANGE_SUCCESSFUL)
    {
      ChangeDisplaySettings(&dm, 0);
      break;
    }
    else if (result == DISP_CHANGE_RESTART)
    {
      ShowMessage("Требуется перезагрузка");
      break;
    }
    else
    {
      ShowMessage("Установка не поддерживается монитором");
      break;
    }
  }
  index++;
}

Как узнать размер рабочей области экрана?
Прим.: Рабочая область - часть экрана, не закрываемая панелью задач
TRect rect;
if( SystemParametersInfo(SPI_GETWORKAREA,0,&rect,0) ) {
   // получили размер рабочей области
   ShowMessage("WorkArea size is "+AnsiString(rect.Width())+"x"+AnsiString(rect.Height()));
} else {
   // не удалось получить размер рабочей области
   ShowMessage("GetWorkArea failed");
}