Autor Beitrag
achterburg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 50



BeitragVerfasst: Fr 03.09.04 19:47 
Hallo alle zusammen, ich bin gerade dabei, ein Brettspiel zu programmieren und habe für jede Spielfigur ein image:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
TYPE SpielerX = Record
      image: TImage;
      text: TLabel;
      feld: integer;
     end;
     Spieler1 = ARRAY[1..4] of SpielerX;


Var Spieler:Spieler1;


^^Ich habe statt Record auch schon object versucht


Ich gebe den images von Spieler[1-4] durch eine oncreate procedure einer unit die Zuweisung zu einem existierenden, festen image:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm4.FormCreate(Sender: TObject);
begin
 unit2.Spieler[1].image:=Form1.Image3;
 unit2.Spieler[1].text:=Form1.Label2;
 unit2.Spieler[1].feld:=0;
 unit2.Spieler[2].image:=Form1.Image4;
 unit2.Spieler[2].text:=Form1.Label3;
 unit2.Spieler[2].feld:=0;
 unit2.Spieler[3].image:=Form1.Image5;
 unit2.Spieler[3].text:=Form1.Label4;
 unit2.Spieler[3].feld:=0;
 unit2.Spieler[4].image:=Form1.Image6;
 unit2.Spieler[4].text:=Form1.Label5;
 unit2.Spieler[4].feld:=0;


Mein Problem ist, dass ich aber nur mit
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
 

Spieler[wer].image.Left:=Ort[wer].ul;
 Spieler[wer].image.Top:=Ort[wer].uh + 30;
 Spieler[wer].text.Left:=Ort[wer].ul + 12;
 Spieler[wer].text.Top:=Ort[wer].uh + 35;
 Spieler[wer].feld:=wfeld;
Wer = integervariable, die den altuellen Spieler angibt

bei Spieler 1 eine Wirkung erreich, die anderen drei images klammern sich alle oben links fest und lassen sich nur bewegen, wenn ich sie direkt anspreche, also mit image2.left oder so. ich möchte das aber über das array machen, um unnötigen aufwand beim Spielerwechsel zu umgehen. Hat jmd. eine Idee???
achterburg Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 50



BeitragVerfasst: Fr 03.09.04 20:49 
alles klar, hat sich erledigt, ich hatte vergessen, den Index zu erhöhen, lol