Форум веб-мастеров  /  Статьи веб-мастера  /  WHOIS-сервис  /  Услуги веб-мастера  /  RSS 
Разделы сайта




Полезные ссылки

wm-help.net -> Электронная библиотека -> Delphi -> Вопросы и Ответы по Delphi -> Вопрос и Ответ 18

Вопрос и Ответ 18

Вопрос и Ответ 18

Вопросы и Ответы


      18. Можно ли в Delphi создать хранитель экрана совместимый со стандартными хранителями Windows?

      Конечно можно! Для этого необходимо выполнить следующие шаги:

      1. В файл проекта (*.DPR) добавить строку {$D SCRNSAVE <название хранителя>} после строки подключения модулей (Uses...).
      2. У окна формы убрать системное меню, кнопки и придать свойству WindowState значение wsMaximize.
      3. Предусмотреть выход из хранителя при нажатии на клавиши клавиатуры, мыши и при перемещении курсора мыши.
      4. Проверить параметры с которым был вызван хранитель и если это /c - показать окно настройки хранителя, а иначе (можно проверять на /s, а можно и не проверять) сам хранитель.
      5. Скомпилировать хранитель экрана.
      6. Переименовать *.EXE файл в файл *.SCR и скопировать его в каталог WINDOWS\SYSTEM\.
      7. Установить новый хранитель в настройках системы!

      Название хранителя может состоять из нескольких слов с пробелами, на любом языке.

      При работе хранителя необходимо прятать курсор мыши, только не забывайте восстанавливать его после выхода.

      Все параметры и настройки храните в файле .INI, так как хранитель и окно настройки не связаны друг с другом напрямую.

      Старайтесь сделать свой хранитель как можно меньше и быстрее. Иначе ваши долго работающие (в фоновом режиме) приложения будут работать еше дольше!

      Пример:

      Данный пример довольно большой и стоит скопировать его архив, а здесь рассмотрены основные моменты.

      ............

      {в файле *.DPR}
      {$D SCRNSAVE Пример хранителя экрана}

      ............

      {проверить переданные параметры}
      IF (ParamStr(1) = '/c') OR (ParamStr(1) = '/C') THEN

        ............

      ............

      {скрыть курсор мыши}
      ShowCursor(False);

      ............

      {восстановить курсор мыши}
      ShowCursor(True);

      ............


...предыдущая страница следующая...
оглавление

[ Вверх ]

Rambler's Top100

Другие наши проекты:
бодибилдинг | Строим Домик | RU-домены за 170 рублей |
"Вопрос и Ответ 18"
Copyright © "В помощь Веб-Мастеру" (Alexander D. Belyaev) 2005-2008.
При перепечатке любого материала видимая ссылка на источник "В помощь Веб-Мастеру" и все имена, ссылки авторов обязательны!
Время генерации страницы: 0.045