Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 2 308

Раздел: Delphi » Прочее
/ вопрос открыт /

Здравствуйте, уважаемые эксперты! Можно ли сделать так, что бы картинки, извлекались из ресурса на FormCreate друг за другом - т. е. показал 1-ю как-то так - LoadJPEGFromRes(PictureNames[1], Image1.Picture); затем прошло N времени показал вторую, третью и т. д..? с интервалом определеным... Спасибо)

Хитманчан Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Хитманчан (статус: Посетитель)
Вопрос отправлен: 16 января 2009, 00:43
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: Ученый

Здравствуйте, Хитманчан! напишу вариант для загрузки Bmp из ресурсов... Кидаем в ресурс картинки...имена им присваиваем такие: 1,2,3 и и так далее...
теперь собственно сам код:
Объявляем глобалные переменные:
n,i:integer; // n-интервал таймера
imy:pAnsiChar;
Bmp: TBitmap;

затем
procedure TForm1.FormCreate(Sender: TObject);
begin
Timer1.Interval:=n;
Timer1.Enabled:=true;
i:=0;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
i:=i+1;
imy:=pansichar(i);
Bmp := TBitmap.Create;
Bmp.Handle := LoadBitmap(HInstance,imy);
Refresh;
Image1.Canvas.Draw(0,0, Bmp);
Bmp.Free;
end;

ну вот впринципи и все... главное с самим ресурсом ничего не напутать....


З.Ы. Удачи...

Ответ отправил: Ученый (статус: 8-ой класс)
Время отправки: 16 января 2009, 15:32
Оценка за ответ: 5


Мини-форум вопроса

Всего сообщений: 15; последнее сообщение — 16 января 2009, 16:14; участников в обсуждении: 3.
Death_Master

Death_Master (статус: Посетитель), 16 января 2009, 04:38 [#1]:

Либо потоки либо таймеры(+могут быть и потоки)...
Что для Вас предпочтительнее?


Лично я предпочту извлечь В, а потом решить что и когда показывать....

P.S. Adware ОЧЕНЬ не люблю(это моё ЛИЧНОЕ мнение)...
Обычно захожу по ночам... (60-70%)
Если нужно что-то написать, то беру оборудованием, деньгими и пивом(при личной встрече)...
P.S. Помогаю и рассказываю бесплатно ^_^.....Nyaaa!
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 13:18 [#2]:

Death_Master, спасибо! Не знаю - таймерам я не доверяю... как-то пробовал - разную разницу времени дают... Если Вам не трудно, не могли бы Вы пример написать какой-то, на Ваш выбор) Был бы сильно благодарен)
Ученый

Ученый (статус: 8-ой класс), 16 января 2009, 13:54 [#3]:

А чем вам Таймер то не нравится.....самое простое сделать именно через него...
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 14:07 [#4]:

Ученый, прсото я на таймер как-то пробовал ставить закрытие формы - и оно каждый раз закрывало по разному... то опаздывало - то спешило... но попробовать можно...
Ученый

Ученый (статус: 8-ой класс), 16 января 2009, 14:50 [#5]:

Только тут уже не в FormCreate надо будет писать, а в обработчике таймера...
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 14:52 [#6]:

Ok! Не подскжите только что писать)
Ученый

Ученый (статус: 8-ой класс), 16 января 2009, 14:58 [#7]:

Написать то легко...Просто я не когда не загружал так LoadJPEGFromRes(PictureNames[1], Image1.Picture)...Могу написать для загрузки Bmp....Код немного отличается...а вам именно Jpeg надо загружать?
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 15:03 [#8]:

И ресурс переделывать прийдется... может как-то можно по другому JPEG из ресурса доставать - не через LoadJPEGFromRes(PictureNames[1], Image1.Picture)... просто боюсь не разберусь я с BMP...
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 15:04 [#9]:

Может мне код проги выложить?
Ученый

Ученый (статус: 8-ой класс), 16 января 2009, 15:05 [#10]:

Да впринципе ничего сложного...А ресурс придется скорее всего так и так переделывать....Код не нужен...
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 15:13 [#11]:

Ну попробую разобратсья тогда с BMP) Может что и получится
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 15:54 [#12]:

Все - понял... Огромное спасибо)))
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 16:10 [#13]:

А можно еще попрос - сейчас оно рботает только с 9-ю изображеними - а как сделать, что бы с 2-х значными номерами изображений раблтало?
Ученый

Ученый (статус: 8-ой класс), 16 января 2009, 16:12 [#14]:

просто делайте соответствующие имена картинок например 9,10,11,12,13....132,133
Хитманчан

Хитманчан (статус: Посетитель), 16 января 2009, 16:14 [#15]:

Блин... извиняюсь... это я просто не все картинки в реурс закинул...

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:30
Выполнено за 0.02 сек.