• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Перелистывание Изображений

  • Автор темы Алёна91
  • Дата начала
А

Алёна91

Помогите пожалуйста правильно реализовать вот что (пишу мини электронный музей, пользователь выбирает категорию и просматривает в каждой категории экспонаты): по нажатию на кнопку например, Украшения, в image загружается изображение и пользователь может их перелистывать вперед и назад (пока все картинки находятся в папке с программой)
Вот как я реализовала:
Код:
procedure TForm1.sButton6Click(Sender: TObject);
begin

sPanel5.Visible:=false;
sMemo1.Visible:=true;
sBitBtn1.Visible:=true;
sBitBtn2.Visible:=true;

if sender=sBitBtn1 then //перелистывание вперед
n:=n+1;
if n=5 then n:=1;
Image1.Picture.LoadFromFile(inttostr(n) + '.bmp');

if sender=sBitBtn2 then //перелистывание назад
n:=n-1;
if n=1 then n:=5;
Image1.Picture.LoadFromFile(inttostr(n)+'.bmp');

end;
отображается только одно изображение и не перелистывает((
помогите разобраться, может есть вообще другой какой-нибудь способ??
 
M

-master-

это понятно, а почему? он должен сказать, он умный
 
A

AndreyS

А какой у тебя первій номер (n)?
Где ты указываеш с какого номера начинать?

добав n:=0;

/////
procedure TForm1.FormCreate(Sender: TObject);
begin
n:=0;
end;
 
S

sinkopa

ну а дебагер что говорит?
ничего, просто не перелистывает и все)
Какой молчаливый у Вас дебагер... Может обидели его чем? :D
Ну чтож... раз уж Вы с дебагером в ссоре... попробуйте изменить Ваш код следующим образом:
Код:
procedure TForm1.sButton6Click(Sender: TObject);
var
ImageName: string;
begin
sPanel5.Visible:=false;
sMemo1.Visible:=true;
sBitBtn1.Visible:=true;
sBitBtn2.Visible:=true;

if (sender = sBitBtn1) then //перелистывание вперед
Inc(n)
else if (sender = sBitBtn2) then //перелистывание назад
Dec(n)
else
begin
ShowMessage('Ты что! я не sBitBtn1 и не sBitBtn2! Я же '+ TButton(Sender).Name);
Exit;
end;


if (n > 5) then
n := 1
else if (n < 1) then
n := 5;

ImageName := inttostr(n)+'.bmp';

if not FileExists(ImageName) then
begin
ShowMessage('Нет такой картинки: '+ ImageName);
Exit;
end;

Image1.Picture.LoadFromFile(ImageName);
Image1.Invalidate;
end;
 
А

Алёна91

ой, спасибо ребят, я уже разобралась)))спасибо за то что уделили время!)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!