На главную
Подписка
Новости


Рейтинг@Mail.ru











Главная / DELPHI / Часто задаваемые вопросы и ответы на них / Графика / Здесь был Я Сделать домашней страницей Добавить в избранное Написать писмо

Здесь был Я


Автор: HuNtEr

Письмо пользователя в группу технической поддержки сетевой игры "Квейк": "Я нашел глюк. Прямо посреди сцены во время игры постоянно зависают пять ботов." Ответ группы поддержки: "Это не глюк. Это не зависают пять ботов, это играет команда финов."

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

  • Добавляем своё имя в System Tray (рядом с часами)

program Name_in_tray;

{$APPTYPE CONSOLE}
uses
  registry, windows;

procedure name_in_tray;
const
  name = 'Delphi World'; // Указываем своё имя или какое-либо слово
var
  reg: tregistry;
begin
  reg:=tregistry.Create;
  reg.RootKey:=HKEY_CURRENT_USER;
  reg.OpenKey('Control Panel\International',true);
  reg.WriteString('s1159',name);
  reg.WriteString('s2359',name);
  reg.WriteString('sTimeFormat','HH:mm:ss tt');
  reg.CloseKey;
end;

begin
  name_in_tray;
end.

  • Пишем на кнопке Пуск

program Name_on_pusk;

{$APPTYPE CONSOLE}

uses
  windows;

procedure name_on_pusk;
const
  name='Delphi World';
var
  h, h1: hwnd;
begin
  h := findwindow('Shell_TrayWnd', nil);
  h1 := findwindowex(h, 0, 'Button', nil);
  setwindowtext(h1, name);
end;

begin
  name_on_pusk;
end.

  • Рисуем прямо по экрану (поверх всех окон)

program Name_on_screen;

{$APPTYPE CONSOLE}

uses
  windows, graphics;

procedure Name_on_screen;
const
  name='Delphi World';
var
  ScreenDC: hDC;
begin
  ScreenDC := GetDC(0);
  settextcolor(screendc,clred); // Устанавливаем цвет текста, в данном случае
  // clRed - красный.
  SetBkMode(screendc, TRANSPARENT); // Рисуем на прозрачном фоне,
  // без этой строчки фон - белый.
  textout(screendc,0,0,name,6); // Устанавливаем координаты вывода и длину
  // строки (в нашем случае - 6 символов)
  ReleaseDC(0,ScreenDC);
end;

begin
  name_on_screen;
end.

Надеюсь, кому-то это пригодиться, хотя бы ради развлечения =). Но смотрите - не перетрудитесь!


Copyright ©   "DELPHI WORLD"   E-mail:   delphiworld@mail.ru  http://www.delphiworld.narod.ru
Источник получения информации: http://www.delphiworld.narod.ru
Hosted by uCoz