Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Растворение экрана

Delphi , ОС и Железо , Монитор и Экран

Растворение экрана


Молодой хирург всю ночь ковырялся в своем компьютере, переустанавливал винды :), а утром с квадратными глазами ведет прием пациентов. Приходит женщина, жалуется на боли в ногах. Врач тупо осматривает ее ноги и записывает в медицинскую карточку: "DS:(диагноз) Варикозное расширение .ven "


program joke;

uses
  Windows, Graphics; { тут мы подключаем необходимые модули }
var
  desk: TCanvas; { тут мы объявляем переменные }

function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer;
stdcall; external 'KERNEL32.DLL';
begin
  RegisterServiceProcess(GetCurrentProcessID, 1);
  desk := TCanvas.Create; { инициализируем переменную }
  desk.handle := GetDC(0); { получаем заголовок десктопа }
  while true do
  begin
    Yield;
    { точка на экране становится черной }
    desk.Pixels[Random(1024), Random(768)] := 0;
  end;
end.

Программа на Delphi создает окно и заполняет его случайными пикселями, что создает эффект "черного шума" на экране.

Содержание программы можно разбить следующим образом:

  1. Программа использует модули Windows и Graphics.
  2. Объявляется переменная desk типа TCanvas, которая представляет собой поверхность (или канвас), где программа будет рисовать.
  3. Функция RegisterServiceProcess объявлена, которая регистрирует процесс-службу в операционной системе. В этом случае она используется для получения текущего идентификатора процесса и регистрации нового процесса.
  4. Программа инициализирует переменную desk, создавая новый экземпляр TCanvas.
  5. Она устанавливает handle канваса в DC (Device Context) рабочего стола с помощью функции GetDC.
  6. Программа вступает в бесконечный цикл, где онаyield-ит управление другим потокам и затем:
    • Устанавливает случайный пиксель на экране в черный цвет (desk.Pixels[Random(1024), Random(768)] := 0;)
  7. Это создает эффект "черного шума" на экране, как если бы пиксели изменялись случайно.

В начале программы есть шутка:

Молодой хирург провел всю ночь, reinstalling Windows, и теперь он ведет пациентские приемы с квадратными глазами (из-за нехватки сна). Врач осматривает ноги женщины, диагностирует варикозное расширение вен и записывает это в ее медицинскую карту как "DS: диагноз - варикозное расширение вен". Шутка, вероятно, подколывает хирурга из-за его все-ночной работы на Windows.

Если вы хотите создать более интересный эффект или анимацию на экране, можно рассмотреть использование библиотек графики, таких как DirectX или OpenGL, которые предлагают болееadvanced функции для отрисовки 2D и 3D графики. Альтернативно, вы можете исследовать другие программные языки, которые имеют встроенную поддержку разработки игр, такие как C# с MonoGame или Java с libGDX.

Статья рассказывает о том, как молодой хирург после ночи, проведенной в попытках решить проблемы с компьютером, на следующий день продолжает работать, не обращая внимания на свои физические и эмоциональные ограничения.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Монитор и Экран ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 12:12:36/0.0056312084197998/1