скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как перевести монитор в режим stand-by



Автор: Kecvin S. Gallagher

В офисе два программиста беседуют:
Первый:
- У меня самый матовый монитор!!!
Второй:
- Это потому, что его неоднократно покрывали матом!!!

Если монитор поддерживает режим Stand by, то его можно программно перевести в этот режим. Данная возможность доступна на Windows95 и выше.

Чтобы перевести монитор в режим Stand by:


SendMessage(Application.Handle, wm_SysCommand, SC_MonitorPower, 0);

Чтобы вывести его из этого режима:


SendMessage(Application.Handle, wm_SysCommand, SC_MonitorPower, -1);

А теперь более полный пример кода:

На новую форму поместите кнопку, таймер и ListBox.

Timer (use Object Inspector):

Enabled := False
Interval := 15000

Добавьте следующее событие таймеру:


procedure TForm1.Timer1Timer(Sender: TObject);
begin
  ListBox1.Items.Add(FormatDateTime('h:mm:ss AM/PM', Time));
  SendMessage(Application.Handle, wm_SysCommand, SC_MonitorPower, -1);
end;

Command Button:


procedure TForm1.Button1Click(Sender: TObject);
begin
  ListBox1.Items.Add('--> ' + FormatDateTime('h:mm:ss AM/PM', Time));
  Timer1.Enabled := not Timer1.Enabled;
  SendMessage(Application.Handle, wm_SysCommand, SC_MonitorPower, 0);
end;

После запуска откомпилированного приложения и нажатия на кнопку, экран погаснет на 15 секунд.

ЗАМЕЧАНИЕ: Удостоверьтесь, что во первых компьютер поддерживает режимы энергосбережения, а вовторых, эти функции не запрещены на данном компьютере.






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook