Witam, muszę znowu poprosić mądrzejszych o pomoc:
procedure TForm1.Button1Click(Sender: TObject);
type
TKarta = record
Karta : string;
Punkty : integer;
end;
const
i : integer=1;
tablica : array[0..51] of TKarta = (
(Karta: 'dwojkapik.bmp'; Punkty: 2;),
(Karta: 'trojkapik.bmp'; Punkty: 3;),
(Karta: 'czworkapik.bmp'; Punkty: 4;),
(Karta: 'piatkapik.bmp'; Punkty: 5;),
(Karta: 'szostkapik.bmp'; Punkty: 6;),
(Karta: 'siodemkapik.bmp'; Punkty: 7;),
(Karta: 'osemkapik.bmp'; Punkty: 8;),
(Karta: 'dziewiatkapik.bmp'; Punkty: 9;),
(Karta: 'dziesiatkapik.bmp'; Punkty: 10;),
(Karta: 'waletpik.bmp'; Punkty: 2;),
(Karta: 'damapik.bmp'; Punkty: 3;),
(Karta: 'krolpik.bmp'; Punkty: 4;),
(Karta: 'aspik.bmp'; Punkty: 11;),
(Karta: 'dwojkaserce.bmp'; Punkty: 2;),
(Karta: 'trojkaserce.bmp'; Punkty: 3;),
(Karta: 'czworkaserce.bmp'; Punkty: 4;),
(Karta: 'piatkaserce.bmp'; Punkty: 5;),
(Karta: 'szostkaserce.bmp'; Punkty: 6;),
(Karta: 'siodemkaserce.bmp'; Punkty: 7;),
(Karta: 'osemkaserce.bmp'; Punkty: 8;),
(Karta: 'dziewiatkaserce.bmp'; Punkty: 9;),
(Karta: 'dziesiatkaserce.bmp'; Punkty: 10;),
(Karta: 'waletserce.bmp'; Punkty: 2;),
(Karta: 'damaserce.bmp'; Punkty: 3;),
(Karta: 'krolserce.bmp'; Punkty: 4;),
(Karta: 'asserce.bmp'; Punkty: 11;),
(Karta: 'dwojkatrefl.bmp'; Punkty: 2;),
(Karta: 'trojkatrefl.bmp'; Punkty: 3;),
(Karta: 'czworkatrefl.bmp'; Punkty: 4;),
(Karta: 'piatkatrefl.bmp'; Punkty: 5;),
(Karta: 'szostkatrefl.bmp'; Punkty: 6;),
(Karta: 'siodemkatrefl.bmp'; Punkty: 7;),
(Karta: 'osemkatrefl.bmp'; Punkty: 8;),
(Karta: 'dziewiatkatrefl.bmp'; Punkty: 9;),
(Karta: 'dziesiatkatrefl.bmp'; Punkty: 10;),
(Karta: 'walettrefl.bmp'; Punkty: 2;),
(Karta: 'damatrefl.bmp'; Punkty: 3;),
(Karta: 'kroltrefl.bmp'; Punkty: 4;),
(Karta: 'astrefl.bmp'; Punkty: 11;),
(Karta: 'dwojkakaro.bmp'; Punkty: 2;),
(Karta: 'trojkakaro.bmp'; Punkty: 3;),
(Karta: 'czworkakaro.bmp'; Punkty: 4;),
(Karta: 'piatkakaro.bmp'; Punkty: 5;),
(Karta: 'szostkakaro.bmp'; Punkty: 6;),
(Karta: 'siodemkakaro.bmp'; Punkty: 7;),
(Karta: 'osemkakaro.bmp'; Punkty: 8;),
(Karta: 'dziewiatkakaro.bmp'; Punkty: 9;),
(Karta: 'dziesiatkakaro.bmp'; Punkty: 10;),
(Karta: 'waletkaro.bmp'; Punkty: 2;),
(Karta: 'damakaro.bmp'; Punkty: 3;),
(Karta: 'krolkaro.bmp'; Punkty: 4;),
(Karta: 'askaro.bmp'; Punkty: 11;));
var
k : integer;
begin
Randomize;
Button2.Enabled := True;
case i of
1: begin
k := random(52);
Image1.Picture.LoadFromFile(tablica[k].Karta);
Label3.Caption := IntToStr(StrToInt(Label3.Caption) + tablica[k].punkty);
Niby w tablicy są 52 (0 - 51) indeksy. Zmienna k również losuje liczby tylko z przedziału 0 - 51 a mimo wszystko wyświetla mi komunikat Bitmap Image is not valid. Oczywiście nie zawsze, raz na jakiś czas. Nie wiem dlaczego, jakby ktoś miał pomysł proszę o pomoc.