15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Как изменить изображение кнопки "Пуск".

Автор: Misha Moellner

Пример из серии "Что можно сделать с рабочим столом". В общем, это обычный трюк с кнопкой "Пуск" (Start).

Совместимость: все версии Delphi

{ объявляем глобальные переменные }

var
  Form1: TForm1;
  StartButton: hWnd;
  OldBitmap: THandle;
  NewImage: TPicture;

{ добавляем следующий код в событие формы OnCreate }

procedure TForm1.FormCreate(Sender: TObject);
begin
  NewImage := TPicture.create;
  NewImage.LoadFromFile('C:\Windows\Circles.BMP');
  StartButton := FindWindowEx
                 (FindWindow(
                    'Shell_TrayWnd', nil),
                     0,'Button', nil);
  OldBitmap := SendMessage(StartButton,
                           BM_SetImage, 0,
                           NewImage.Bitmap.Handle);
end;

{ Событие OnDestroy }

procedure TForm1.FormDestroy(Sender: TObject);
begin
  SendMessage(StartButton,BM_SetImage,0,OldBitmap);
  NewImage.Free;
end;