Недавно добавленные исходники

•  TDictionary Custom Sort  986

•  Fast Watermark Sources  1 324

•  3D Designer  2 143

•  Sik Screen Capture  1 786

•  Patch Maker  1 863

•  Айболит (remote control)  1 682

•  ListBox Drag & Drop  1 393

•  Доска для игры Реверси  35 507

•  Графические эффекты  1 637

•  Рисование по маске  1 570

•  Перетаскивание изображений  1 247

•  Canvas Drawing  1 162

•  Рисование Луны  1 002

•  Поворот изображения  920

•  Рисование стержней  961

•  Paint on Shape  623

•  Генератор кроссвордов  924

•  Головоломка Paletto  857

•  Теорема Монжа об окружностях  1 051

•  Пазл Numbrix  735

•  Заборы и коммивояжеры  1 027

•  Игра HIP  670

•  Игра Go (Го)  634

•  Симулятор лифта  680

•  Программа укладки плитки  612

•  Генератор лабиринта  683

•  Проверка числового ввода  654

•  HEX View  737

•  Физический маятник  638

•  Задача коммивояжера  695

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Как программно заменить обои на рабочем столе 2



Автор: Владимир Рыбант

Другие подобные советы не изменяют обои, если в Windows работает режим Active Desktop

Нужно использовать следующее:


uses
  ComObj, ShlObj;

procedure ChangeActiveWallpaper;
const
  CLSID_ActiveDesktop: TGUID = '{75048700-EF1F-11D0-9888-006097DEACF9}';
var
  ActiveDesktop: IActiveDesktop;
begin
  ActiveDesktop := CreateComObject(CLSID_ActiveDesktop)
    as IActiveDesktop;
  ActiveDesktop.SetWallpaper('c:\windows\forest.bmp', 0);
  ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
end;

Этим способом можно также изменять обои картинками jpg и gif








Copyright © 2004-2022 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте   Facebook   Ссылка на Twitter   Ссылка на Telegram