AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Neuen Beitrag zur Code-Library hinzufügen Delphi Access Violation bei Array of TImage.
Thema durchsuchen
Ansicht
Themen-Optionen

Access Violation bei Array of TImage.

Ein Thema von Informatik2012 · begonnen am 29. Nov 2011 · letzter Beitrag vom 29. Nov 2011
 
Informatik2012

Registriert seit: 30. Mai 2011
30 Beiträge
 
#1

Access Violation bei Array of TImage.

  Alt 29. Nov 2011, 22:06
Also. Ich habe ein Array von TImage erstellt. Und da kommt manchmal eine Access Violation.
Delphi-Quellcode:
var
  Form1: TForm1;
  Kal : Array[1..24] of TWeihnachtskalendereintrag;
  Images : Array[1..24] of TImage;
  Number : Integer;

implementation

{$R *.dfm}

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var i : integer;
begin
//MediaPlayer1.Stop;
for i := 1 to 24 do
begin
  Kal[i].Free;
  Images[i].Free;
end;
  
end;

procedure TForm1.FormCreate(Sender: TObject);
var i,k : integer;
begin
  Memo1.Clear;
  Memo1.Lines.LoadFromFile('speicher.txt');
  Number := StrToInt(Memo1.Text);
  Images[1] := Image2;
      Images[2] := Image3;
      Images[3] := Image4;
      Images[4] := Image5;
      Images[5] := Image6;
      Images[6] := Image7;
      Images[7] := Image8;
      Images[8] := Image9;
      Images[9] := Image10;
      Images[10] := Image11;
      Images[11] := Image12;
      Images[12] := Image13;
      Images[13] := Image14;
      Images[14] := Image15;
      Images[15] := Image16;
      Images[16] := Image17;
      Images[17] := Image18;
      Images[18] := Image19;
      Images[19] := Image20;
      Images[20] := Image21;
      Images[21] := Image22;
      Images[22] := Image23;
      Images[23] := Image24;
      Images[24] := Image25;
  if Number = 0 then
  begin
      Image1.Picture.LoadFromFile('picture\0.bmp');
  end else
  begin
      Image1.Picture.LoadFromFile('picture\'+IntTOStr(Number)+'.bmp');
      for k := 1 to Number do
      begin
      Images[k].Picture.LoadFromFile(Kal[k].GibAnzeigeBild);
      //Image2.Picture.LoadFromFile(Kal[2].GibAnzeigeBild);
      end;
  end;
Images ist das besagte Array.
Und es kommt immer eine Access Violation bei Adresse 0x000000 oder so ähnlich und zwar immer beim untersten IF und zwar im ELSE Zweig. also quasi beim Laden des Bildes, aber ich kann mir nicht erklärenn wieso.
Die Datei Speicher.txt wird mit folgender Procedure verändert.
Delphi-Quellcode:
procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var i : integer;
bool : integer;
year,month,day : word;
begin
  for i := 1 to 24 do
  begin
  if ((X>Kal[i].GibX_Koo)and(X<(Kal[i].GibX_Koo+Kal[i].GibTuerBreite)) and (Y>Kal[i].GibY_Koo)and (Y<(Kal[i].GibY_Koo+Kal[i].GibTuerHoehe))) then
  begin
  bool := i;
  end;
  end;
  DecodeDate(Now,year,month,day);
  if bool <= day then
  begin
    if kal[bool].GibGeoeffnet = false then
    begin
      Images[bool].Picture.LoadFromFile(kal[bool].GibAnzeigeBild);
      Images[bool].Visible := true;
      MediaPlayer1.FileName:=Kal[bool].GibLink;
      MediaPlayer1.Open;
      MediaPlayer1.Play;
    end else
    begin
      MediaPlayer1.FileName:=Kal[bool].GibLink;
      MediaPlayer1.Open;
      MediaPlayer1.Play;
    end;
    if bool = Number +1 then
    begin
      Memo1.Text := IntToStr(Bool);
      Memo1.Lines.SaveToFile('Speicher.txt');
    end;
  end;
end;
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz