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

•  DeLiKaTeS Tetris (Тетрис)  3 784

•  TDictionary Custom Sort  5 899

•  Fast Watermark Sources  5 694

•  3D Designer  8 469

•  Sik Screen Capture  6 031

•  Patch Maker  6 475

•  Айболит (remote control)  6 468

•  ListBox Drag & Drop  5 332

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

•  Графические эффекты  6 674

•  Рисование по маске  5 789

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

•  Canvas Drawing  5 230

•  Рисование Луны  4 953

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

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

•  Paint on Shape  2 431

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

•  Головоломка Paletto  2 613

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

•  Пазл Numbrix  2 247

•  Заборы и коммивояжеры  2 908

•  Игра HIP  1 876

•  Игра Go (Го)  1 790

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

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

•  Генератор лабиринта  2 296

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

•  HEX View  2 289

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

 
скрыть

  Форум  

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

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



Delphi Sources

Изменять иконку приложения или окна во время его работы



А мне постоянно хочется передвинуть иконки телеканалов подалье в игол, чтобы не мешались :))) а иногда floating для них выключить.

Изменять иконку приложения или окна достаточно просто - для этого у TApplication и TForm предусмотрено свойство Icon. Смена иконки может вестись обычным присвоением свойству Icon нового значения:


Form1.Icon := Image1.Picture.Icon;

При этом происходит не присвоение указателя (как казалось бы), а копирование данных посредством вызова Assign, который производится в методе TForm.SetIcon

Загрузка иконки из ресурса

Загрузка производится типовым вызовом API:


Form1.Icon.Handle := LoadIcon(hInstance, 'имя иконки в ресурсе');

Причем имя в ресурсе желательно писать всегда в верхнем регистре

Все сказанное выше пригодно и для приложения, только в этом случае вместо Form1 выступает Application. Для принудительной перерисовки кнопки приложения в панеле задач можно применить вызов


InvalidateRect(Application.Handle, nil, True);

Пример организации простейшей анимации иконки приложения


procedure TForm1.Timer1Timer(Sender: TObject);
begin
  inc(IconIndex);
  case IconIndex of
    1 : Application.Icon.Assign(Image1.Picture.Icon);
    2 : Application.Icon.Assign(Image2.Picture.Icon);
    else IconIndex := 0;
  end;
  InvalidateRect(Application.Handle, nil, True);
end;

При этом естественно предполагается, что в Image1 и Image2 загружены иконки.





Похожие по теме исходники

Посторонние окна WinAPI

A Star (нахождение кратчайшего пути)

Нахождение кратчайшего пути

Облако тегов

 

Дейкстра: поиск кратчайшего пути

Примеры работы с БД

График работы




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

Группа ВКонтакте