Thema: Delphi Class TPanel not found

Einzelnen Beitrag anzeigen

Hellcat

Registriert seit: 27. Feb 2003
60 Beiträge
 
Delphi 6 Personal
 
#1

Class TPanel not found

  Alt 9. Apr 2003, 10:40
Hi Leute!

Ich erhalte beim Starten meines Programms die Fehlermeldung "EClassNotFond with 'Class TPanel not found'". Allerdings habe ich auf besagter Form keine Panels verwendet....

Delphi-Quellcode:
program Halbel;

uses
  Forms,
  UnitHaupt in 'UnitHaupt.pas{Form1},
  UnitFunc in 'UnitFunc.pas',
  UnitType in 'UnitType.pas',
  UnitLS in 'UnitLS.pas{Form2};


{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TForm2, Form2);//Hier tritt der Fehler auf
  Application.Run;
end.
Die dazugehörige Unit sieht so aus:
Delphi-Quellcode:
unit UnitLS;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,ExtCtrls, unittype, unitfunc;

type
  TForm2 = class(TForm)
    ListBoxLaden: TListBox;
    LadenButton: TButton;
    AbrLaden: TButton;
    procedure AbrLadenClick(Sender: TObject);
    procedure LadenButtonClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.AbrLadenClick(Sender: TObject); //Form2 schließen
begin
  close;
end;

procedure TForm2.LadenButtonClick(Sender: TObject);
var Zeile : string;
begin
  Zeile := laden;
  Zerlegen(Zeile);
  Form2.Close;
end;

end.
Und hier noch mal die beiden Funktionen die von der Unit aus aufgerufen werden:
Delphi-Quellcode:
procedure zerlegen (Zeile:string); {Zerlegt die ausgelesene Textzeile in die einzelnen Werte und weißt sie zu}
var
  i, zaehler:integer;
  HName, HZeit, HFarbe, Hthl, HSchl, HSnd : string;
begin
  zaehler := 21;
  for i := 1 to 35 do {Durchlauf für alle Panels}
    begin {Initialisierung der einzelnen Variablen}
      HName := '';
      HFarbe := '';
      HZeit := '';
      HSchl := '';
      HThl := '';
      HSnd := '';
      repeat {Name}
        HName := HName + Zeile[Zaehler];
        inc (Zaehler);
      until Zeile[Zaehler] = ';';
      inc (Zaehler);
      repeat {Zeit}
        HZeit := HZeit + Zeile[Zaehler];
        inc (Zaehler);
      until Zeile[Zaehler] = ';';
      if HZeit = '0then Hzeit := '';
      inc (Zaehler);
      repeat {Farbe}
        HFarbe := HFarbe + Zeile[Zaehler];
        inc (Zaehler);
      until Zeile[Zaehler] = ';';
      HFarbe := IntToHex((StrToInt('$' + HFarbe)),6);
      inc (Zaehler);
      repeat {THL}
        Hthl := Hthl + Zeile[Zaehler];
        inc (Zaehler);
      until Zeile[Zaehler] = ';';
      inc (Zaehler);
      repeat {Halle offen/zu}
        HSchl := HSchl + Zeile[Zaehler];
        inc (Zaehler);
      until Zeile[Zaehler] = ';';
      inc (Zaehler);
      repeat {Beschallung}
        HSnd := HSnd + Zeile[Zaehler];
        inc (Zaehler);
      until Zeile[Zaehler] = '#';
      Zaehler := Zaehler + 2;
        with Application.MainForm.FindComponent('PanLab' + IntToStr(i)) as TLabel do {Zuweisung Hallenname}
          begin
            caption := HName;
          end;
        with Application.MainForm.FindComponent('PanLabT' + IntToStr(i)) as TLabel do {Zuweisung Hallenzeit}
          begin
            caption := HZeit;
          end;
        with Application.MainForm.FindComponent ('PanHalle' + InttoStr(i))as TPanel do {Zuweisung Panelfarbe}
          begin
            Color := StrToInt('$' + HFarbe);
          end;
        if HThl <> '-1then BildTHL[i] := true; {Zuweisung THL-Bild}
        BildTHL[i] := THL (Application.MainForm.FindComponent('THLPan1'+IntToStr(i))as TImage,Mbleft,BildTHL[i]);
end;
end;
Delphi-Quellcode:
function laden : string; //Funktion zum Laden
var
  load : textfile;
  zeile: string;
begin
  AssignFile (load, 'zustand.hbl');
  {$i-} Reset (load); {$i+}
  if IOResult <> 0 then
    begin
      showmessage('Die Datei "Zustand.hbl" wurde nicht gefunden!');
      Exit
    end;
  while not Eof (load) do
    begin
      readln (load, Zeile);
    end;
  closefile (load);
  result := Zeile;
end;
2+2=5 (for large values of 2)
  Mit Zitat antworten Zitat