![]() |
Interface Klasse findet Implementierung nicht
mein code sieht wie folgt aus :
die Unit mit der Interface definition.
Delphi-Quellcode:
type
IImageLibrary = Interface ['{B6500357-C309-4E88-99E8-70BDFD33448D}'] procedure ColorImage( Bit : TBitMap; R, G, B : integer ); procedure ColorInvImage( Bit : TBitMap; R, G, B : Boolean ); ...... die unit mit der Implementierung des Interfaces
Delphi-Quellcode:
TImageLibraryClassFMX = class( TInterfacedObject, IImageLibrary )
private ...... public constructor create; destructor destroy; override; procedure ColorImage( Bit : TBitMap; R, G, B : integer ); ..... end; procedure TImageLibraryClassFMX.ColorImage(Bit: TBitMap; R, G, B: integer); begin ...... end; trotzdem bekomme ich beim Übersetzen folgende fehlermeldung
Delphi-Quellcode:
Warum findet der compiler die vorhandene Implementierung der Funktion ColorImage von meiner Klasse nicht ? (
[dcc32 Error] ImageUnit.FMX.pas(32): E2291 Missing implementation of interface method IImageLibrary.ColorImage
|
AW: Interface Klasse findet Implementierung nicht
Villeicht der klassische Fehler, dass TBitmap aus der falschen Unit gezogen wird? (siehst du ja im Mouseover schon) Die Unitreihenfolge muss stimmen. Wenn dort die Unit Windows drin ist, muss die vor Graphics stehen, da dort auch ein tBitmap deklariert ist.
Nebenbei, hat damit nix zu tun, aber: Create und Destroy sollten schon richtig geschrieben werden, nicht mit kleinem Anfangsbuchstaben. |
AW: Interface Klasse findet Implementierung nicht
Ich tip mal auf
Delphi-Quellcode:
als Schuldigen. Den Typ gibt es sowohl in
TBitMap
Delphi-Quellcode:
, als auch in
Winapi.Windows
Delphi-Quellcode:
und
Vcl.Graphics
Delphi-Quellcode:
. Ich tippe, das er in der Interface Unit aus einer anderen Unit kommt als in der Implementierung
Fmx.Graphics
|
AW: Interface Klasse findet Implementierung nicht
Hallo Stefan,
würde das reichen in einem Interface die Unit exakt zu spezifizieren ?
Delphi-Quellcode:
Rollo
Bit : FMX.Graphics.TBitMap;
|
AW: Interface Klasse findet Implementierung nicht
Es würde reichen, wenn man die Interface-Methoden per Code-Completion in die Klasse bringt, denn dann werden alle Typen voll qualifiziert erzeugt.
|
AW: Interface Klasse findet Implementierung nicht
Euer Verdacht war Richtig !!! Danke
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:05 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