Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DelphiX-DXImageList [Delphi, Windows]


ASoft ©   (2004-07-19 08:09:00) 

Уважаемые мастера!
Изучаю компоненты DelphiX, читаю. что найду по этому вопросу.
Многие говорят, что DelphiX это не серьёзно! Возможно... Работа
с DirectX напрямую лучше, но для моего понимания это сложнее.
Но по-моему, DelphiX это быстро.
Подскажите, пожалуйста такую вещь:
Пытаюсь загрузить BMP в DXImageList во время выполнения программы,
типа
... DXImageList.Items.Add;
   DXImageList.Items[0].Name:='n';
   DXImageList.Items[0].Picture.LoadFromFile('n0.bmp');...

затем отправляю это в
...   with TFragment.Create(DXSpriteEngine1.Engine) do
   begin
    Image:=DXImageList2.Items.Find('n');
   ....
   end;
Не работает!
Делаю в DXTimer простое Draw этого имиджа - показывает как надо.
Все работает, если загружать динамически картинки при FormCreate.
А мне надо потом загружать в процессе выполнения!
Помогите, в чем тут загвоздка!
За ранее благодарен.


ASoft   (2004-07-19 12:01:00) [1]

Господа!
Darthman помог мне.
Всех благодарю.
С уважением, ASoft.


Darthman   (2004-07-19 11:48:00) [2]

После загрузки всех картинок в imagelist сделай
DXImageList.Items.Restore;

и все.


ASoft   (2004-07-19 10:29:00) [3]

PS:
Также я пробовал создавать
с нуля DXImageList в runtime, добавлять ITEMсы и
загружать картинки в DXImageList (всё это должно
происходить, например, нажатием кнопки, после загрузки
DX-формы). Результат - SpriteEngine не инжинит, а Draw - рисует...
Вот так проблема!...А надо б чтоб инжинил...


ASoft   (2004-07-19 10:09:00) [4]

Спасибо kruel. Я так уже пробовал.
Не получилось.


kruel   (2004-07-19 09:17:00) [5]

Hi!

Попробуй переинициализировать DXDraw:

DXTimer.Enabled:=False;
DXDraw.Finalize;
DXImageList.Items.Find('n').Picture.LoadFromFile('n0.bmp');
DXDraw.Initialize;
DXTimer.Enabled:=True;


Наверх

Титульная страница Поиск, карта сайта Написать письмо