Einzelnen Beitrag anzeigen

Benutzerbild von maximus Caesar
maximus Caesar

Registriert seit: 26. Sep 2004
Ort: Biberach
319 Beiträge
 
Turbo Delphi für Win32
 
#1

Re: Element '' hat kein übergeordnetes Fenster

  Alt 20. Mär 2005, 15:33
Fehler liegt in Text.OptionenLaden;

Hier mal die zugehörige Unit:

Delphi-Quellcode:
unit Text; // Laden und Verarbeiten einer Daten-Datei

interface

uses ComCtrls, tok, SysUtils;

type TText = class (ComCtrls.TCustomRichEdit)
    procedure FigurenLaden; //Daten der Figuren aller Farben laden
    procedure PositionenLaden; // Läd Die Positionen für die Figuren
    procedure OptionenLaden;
    procedure OptionenSpeichern;
  private
  public

  end;

implementation

uses Variablen, Unit2;

procedure TText.FigurenLaden;
var Data,Data2 : String;
begin
  Lines.LoadFromFile('files\FigData.dat');
  Data:=Text;

  Data2:=GetTok(Data,1,';');
  Blau.Pfad:=Data2;
  Data2:=GetTok(Data,2,';');
  Blau.Datei:=Data2;

  Data2:=GetTok(Data,3,';');
  Gelb.Pfad:=Data2;
  Data2:=GetTok(Data,4,';');
  Gelb.Datei:=Data2;

  Data2:=GetTok(Data,5,';');
  Gruen.Pfad:=Data2;
  Data2:=GetTok(Data,6,';');
  Gruen.Datei:=Data2;

  Data2:=GetTok(Data,7,';');
  Rot.Pfad:=Data2;
  Data2:=GetTok(Data,8,';');
  Rot.Datei:=Data2;

  Data2:=GetTok(Data,9,';');
  Auswahl.Pfad:=Data2;
  Data2:=GetTok(Data,10,';');
  Auswahl.Datei:=Data2;

  Data2:=GetTok(Data,11,';');
  Wuerfel.Pfad:=Data2;
  Data2:=GetTok(Data,12,';');
  Wuerfel.Datei:=Data2;

  Data2:=GetTok(Data,1,';');
  Spielfeld.Pfad:=Data2;
  Data2:=GetTok(Data,2,';');
  Spielfeld.Datei:=Data2;
end;

procedure TText.PositionenLaden;
var
  String1, String2,String3 :String;
  Integer1,Integer2,Integer3,Integer4:Integer;
begin
  Clear;
  Lines.LoadFromFile('files\Positions.pos');
  String1:=Text;

  String2:=GetTok(String1,1,';');
  String3:=GetTok(String2,1,',');
  Blau.XPositionen[1]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Blau.YPositionen[1]:=StrToInt(String3);
  String2:=GetTok(String1,2,';');
  String3:=GetTok(String2,1,',');
  Blau.XPositionen[2]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Blau.YPositionen[2]:=StrToInt(String3);
  String2:=GetTok(String1,3,';');
  String3:=GetTok(String2,1,',');
  Blau.XPositionen[3]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Blau.YPositionen[3]:=StrToInt(String3);
  String2:=GetTok(String1,4,';');
  String3:=GetTok(String2,1,',');
  Blau.XPositionen[4]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Blau.YPositionen[4]:=StrToInt(String3);

  String2:=GetTok(String1,5,';');
  String3:=GetTok(String2,1,',');
  Gelb.XPositionen[1]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gelb.YPositionen[1]:=StrToInt(String3);
  String2:=GetTok(String1,6,';');
  String3:=GetTok(String2,1,',');
  Gelb.XPositionen[2]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gelb.YPositionen[2]:=StrToInt(String3);
  String2:=GetTok(String1,7,';');
  String3:=GetTok(String2,1,',');
  Gelb.XPositionen[3]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gelb.YPositionen[3]:=StrToInt(String3);
  String2:=GetTok(String1,8,';');
  String3:=GetTok(String2,1,',');
  Gelb.XPositionen[4]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gelb.YPositionen[4]:=StrToInt(String3);

  String2:=GetTok(String1,9,';');
  String3:=GetTok(String2,1,',');
  Gruen.XPositionen[1]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gruen.YPositionen[1]:=StrToInt(String3);
  String2:=GetTok(String1,10,';');
  String3:=GetTok(String2,1,',');
  Gruen.XPositionen[2]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gruen.YPositionen[2]:=StrToInt(String3);
  String2:=GetTok(String1,11,';');
  String3:=GetTok(String2,1,',');
  Gruen.XPositionen[3]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gruen.YPositionen[3]:=StrToInt(String3);
  String2:=GetTok(String1,12,';');
  String3:=GetTok(String2,1,',');
  Gruen.XPositionen[4]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Gruen.YPositionen[4]:=StrToInt(String3);

  String2:=GetTok(String1,13,';');
  String3:=GetTok(String2,1,',');
  Rot.XPositionen[1]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Rot.YPositionen[1]:=StrToInt(String3);
  String2:=GetTok(String1,14,';');
  String3:=GetTok(String2,1,',');
  Rot.XPositionen[2]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Rot.YPositionen[2]:=StrToInt(String3);
  String2:=GetTok(String1,15,';');
  String3:=GetTok(String2,1,',');
  Rot.XPositionen[3]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Rot.YPositionen[3]:=StrToInt(String3);
  String2:=GetTok(String1,16,';');
  String3:=GetTok(String2,1,',');
  Rot.XPositionen[4]:=StrToInt(String3);
  String3:=GetTok(String2,2,',');
  Rot.YPositionen[4]:=StrToInt(String3);


  /////BLAU//////
  Integer3:=16;
  Integer4:=4;

  repeat
    integer3:=integer3+1;
    Integer4:=Integer4+1;
    String2:=GetTok(String1,Integer3,';');
    String3:=GetTok(String2,1,',');
    Blau.XPositionen[Integer4]:=StrToInt(String3);
    String3:=GetTok(String2,1,',');
    Blau.YPositionen[Integer4]:=StrToInt(String3);

  until integer4>=44;

  /////GELB///////
  Integer3:=14;
 Integer4:=4;

 repeat
   Integer3:=Integer3+1;
   Integer4:=Integer4+1;
   Gelb.XPositionen[Integer4]:=Blau.XPositionen[Integer3];
   Gelb.YPositionen[Integer4]:=Blau.YPositionen[Integer3];

   if Integer3=44 then Integer3:=4;

 until Integer3=14;

 //////GRUEN////////////
 Integer3:=14;
 Integer4:=4;

 repeat
   Integer3:=Integer3+1;
   Integer4:=Integer4+1;
   Gruen.XPositionen[Integer4]:=Gelb.XPositionen[Integer3];
   Gruen.YPositionen[Integer4]:=Gelb.YPositionen[Integer3];

   if Integer3=44 then Integer3:=4;

 until Integer3=14;

 /////ROT//////

 Integer3:=14;
 Integer4:=4;

 repeat
   Integer3:=Integer3+1;
   Integer4:=Integer4+1;
   Rot.XPositionen[Integer4]:=Gruen.XPositionen[Integer3];
   Rot.YPositionen[Integer4]:=Gruen.YPositionen[Integer3];

   if Integer3=44 then INteger3:=4;

 until Integer3=14;

 /////////ENDPOSITIONEN////////

 Blau.XPositionen[45]:=-4;
 Blau.YPositionen[45]:=0;
 Blau.XPositionen[46]:=-3;
 Blau.YPositionen[46]:=0;
 Blau.XPositionen[47]:=-2;
 Blau.YPositionen[47]:=0;
 Blau.XPositionen[48]:=-1;
 Blau.YPositionen[48]:=0;

 Gelb.XPositionen[45]:=0;
 Gelb.YPositionen[45]:=4;
 Gelb.XPositionen[46]:=0;
 Gelb.YPositionen[46]:=3;
 Gelb.XPositionen[47]:=0;
 Gelb.YPositionen[47]:=2;
 Gelb.XPositionen[48]:=0;
 Gelb.YPositionen[48]:=1;

 Gruen.XPositionen[45]:=4;
 Gruen.YPositionen[45]:=0;
 Gruen.XPositionen[46]:=3;
 Gruen.YPositionen[46]:=0;
 Gruen.XPositionen[47]:=2;
 Gruen.YPositionen[47]:=0;
 Gruen.XPositionen[48]:=1;
 Gruen.YPositionen[48]:=0;

 Rot.XPositionen[45]:=0;
 Rot.YPositionen[45]:=-4;
 Rot.XPositionen[46]:=0;
 Rot.YPositionen[46]:=-3;
 Rot.XPositionen[47]:=0;
 Rot.YPositionen[47]:=-2;
 Rot.XPositionen[48]:=0;
 Rot.YPositionen[48]:=-1;
end;

procedure TText.OptionenLaden;
 var Text1,Text2: String;
begin
  Clear;
  Lines.LoadFromFile('files\Einstellungen.ein');
  Text1:=Text;

  Text2:=Text1;
  delete(Text2,2,length(Text2));
  if Text2='1then Optionen.Rueckgaengig:=True else Optionen.Rueckgaengig:=False;

  Text2:=Text;
  Delete(Text2,1,1);
  Delete(Text2,2,length(Text2));
  if Text2='1then Optionen.dreimalWuerfeln:=True else Optionen.dreimalWuerfeln:=False;

  Text2:=Text;
  Delete(Text2,1,2);
  Delete(Text2,2,length(Text2));
  if Text2='1then Optionen.Zugzwang:=True else Optionen.Zugzwang:=False;

  Text2:=Text;
  Delete(Text2,1,3);
  Delete(Text2,2,length(Text2));
  Optionen.Wuerfeln:=StrToInt(Text2);

  Text2:=Text;
  Delete(Text2,1,4);
  Delete(Text2,2,length(Text2));
  Optionen.Farbauswahl:=StrToInt(Text2);

  Text2:=Text;
  Delete(Text2,1,5);
  Delete(Text2,2,length(Text2));
  Optionen.Spieler:=StrToInt(Text2)+2;

  Text2:=Text;
  Delete(Text2,1,6);
  Delete(Text2,2,length(Text2));
  Optionen.Figuren:=StrToInt(Text2)+1;

  Text2:=Text;
  Delete(Text2,1,7);
  Delete(Text2,2,length(Text2));
  if Text2='0then Optionen.Figurauswahl:=True else Optionen.Figurauswahl:=False;

  Text2:=Text;
  Delete(Text2,1,8);
  Delete(Text2,2,length(Text2));
  if Text2='0then Optionen.BewegungsArt:=True else Optionen.BewegungsArt:=False;

  Text2:=Text;
  Delete(Text2,1,9);
  Delete(Text2,2,length(Text2));
  case StrToInt(Text2) of
    0 : Optionen.Geschwindigkeit:=1;
    1 : Optionen.Geschwindigkeit:=0.5;
    2 : Optionen.Geschwindigkeit:=0.1;
    3 : Optionen.Geschwindigkeit:=0.05;
    4 : Optionen.Geschwindigkeit:=0.01;
    5 : Optionen.Geschwindigkeit:=0.005;
    6 : Optionen.Geschwindigkeit:=0.001;
  end;

end;

procedure TText.OptionenSpeichern;
begin
Clear;
if Form2.CheckBox1.Checked=True then Text:='1else Text:='0';
 if Form2.CheckBox2.Checked=True then Text:=Text+'1else Text:=Text+'0';
 if Form2.CheckBox3.Checked=True then Text:=Text+'1else Text:=Text+'0';
 Text:=Text+IntToStr(Form2.RadioGroup1.ItemIndex);
 Text:=Text+IntToStr(Form2.RadioGroup2.ItemIndex);
 Text:=Text+IntToStr(Form2.RadioGroup3.ItemIndex);
 Text:=Text+IntToStr(Form2.RadioGroup4.ItemIndex);
 Text:=Text+IntToStr(Form2.RadioGroup5.ItemIndex);
 Text:=Text+IntToStr(Form2.RadioGroup6.ItemIndex);
 Text:=Text+IntToStr(Form2.RadioGroup7.ItemIndex);
 Lines.SaveToFile('files\Einstellungen.ein');

 OptionenLaden;
 Optionen.Anzeigen;

end;

end.
  Mit Zitat antworten Zitat