Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Mysteriöser Fehler (https://www.delphipraxis.net/2012-mysterioeser-fehler.html)

nailor 2. Jan 2003 21:43


Mysteriöser Fehler
 
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i: integer;
  Bild: TBitMap;
const
  Pfade: array[0..2] of string = ('1.bmp', '2.bmp', '3.bmp');
begin
Bild := TBitMap.Create;      //Hier ist Zeile 283
for i := 0 to 2 do
  begin
    Bild.LoadFromFile(Pfade[i]);
    Imagelist1.AddMasked(Bild, clNone);
  end;
Bild.Free;
end;
In einem neuen Projekt geht das wunderbar. In meiner Anwendung allerdings nicht. :kotz: Delphi meldet

[Error] Unit1.pas(283): Object or class type required

Die Variablen sind nicht andersweitig deklaruert, die units sind eingebunden. Bin ich blöd? :wiejetzt:

Daniel B 2. Jan 2003 22:20

Moin,

also bei mir geht die Prozedur wunderbar. Keine Compiler Meldung, keine zur Runtime...

Grüsse, Daniel :hi:

Hansa 2. Jan 2003 22:36

Hi Nailor,

Zitat:

//Hier ist Zeile 283
Wenn das bei Daniel B geht ? Was passiert denn bei Dir bis Zeile 283 :?:

Gruß
Hansa

nailor 2. Jan 2003 22:50

Wenn ich eine neue Anwendung starte, einen Button und eine Listbox reinpack, dann geht das auch ohne Fehler. Wenn ich dann aber haargenau den gleichen Code in eine Anwendung von mir übernehmen will, dann passiert genau der komische Fehler von wegen
"Object or class type required ".

Dann hab ich vermutet, dass vielleicht eine der Variablen falsch inizialisiert wird oder andersweitig vergeben ist. Ersteres kann ja nicht sein, weil egal wäre, was drinstände, zweiteres hab ich überprüft und ist nicht der Fall.
Neustart hilft nicht!

Brüggendiek 2. Jan 2003 22:53

Hallo!

Der Compilerfehler deutet auf eine fehlende bzw. fehlerhafte Deklaration hin. Kann es sein, daß Du die Unit "Graphics" nicht in Deinem Programm eingebunden hast oder in einer Unit die tBitMap überschreibt?

Wenn Graphics drin ist: Versuch macht kluck, also schreibe mal
Delphi-Quellcode:
Bild := Graphics.TBitMap.Create;
Wenn es dann klappt, hast Du in irgendeiner Unit eine neue tBitMap definiert und die wird dann genommen!

Gruß

Dietmar Brüggendiek

nailor 2. Jan 2003 22:55

Ich hab zwar keine Units eingebunden (manuell), und auch andersweitig nicht umdeklariert. Ich werde es mal testen. Meinst du dass irgendwie die graphics-unit schaden genommen hat (zb. von scandisc gefleddert?)

Daniel B 2. Jan 2003 22:57

Moin,

ich habe nur die Prozedur genommen, dann Ctrl+F zum komplizieren, dabei ist kein Fehler aufgetreten. Die Unit Grphics wird ja automatisch eingebunden, wenn diese in Deiner anderen Anwendung noch nicht vorhanden ist, dann wirds an dem liegen, wobei ich es mir nicht ganz vorstellen kann, denn Delphi bindet die beim komplizieren immer automatisch ein. Das gleiche gilt auch für die Unit ImgList.

Grüsse, Daniel :hi:

nailor 2. Jan 2003 23:00

graphics.tbitmap.create --->
[Error] Unit1.pas(283): Incompatible types: 'tagBITMAP' and 'TBitmap'

tbitmap.create --->
[Error] Unit1.pas(283): Object or class type required

Brüggendiek 2. Jan 2003 23:00

Hallo!

Zitat:

Zitat von Nailor
Meinst du dass irgendwie die graphics-unit schaden genommen hat (zb. von scandisc gefleddert?)

Wenn das passiert wäre, könntest Du keine Programme mit diese Unit mehr compilieren! Ist also mehr als unwahrscheinlich!

Gruß

Dietmar Brüggendiek

Hansa 2. Jan 2003 23:01

Hi,

Zitat:

wenn diese in Deiner anderen Anwendung noch nicht vorhanden ist,
Und wenn doch ? Bennene alles um und teste. :!:

Gruß
Hansa


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:53 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz