Автор: 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 секунд.
Удостоверьтесь, что во-первых компьютер поддерживает режимы энергосбережения, а во-вторых, эти функции не запрещены на данном компьютере.