hi,
ich hab ma wieder ein problem
undzwar hab ich mir eine komponente geschrieben, welche von TImage abgeleitet worden ist und um MouseEnter MouseLeave und eine ID erweitert wurde.
naja und nun wollte ich sie benutzen, doch da bekomme ich immer die fehlermeldung MouseEnter existiert nicht, aber im
OI wird die eigenschaft angezeigt, und wenn ich der eigentschaft eine procedure zuweise, dann kommt oben genannter fehler
hier ist mal der code der kompo:
Delphi-Quellcode:
unit IDImage;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
type
TIDImage =
class(TImage)
private
FOnMouseLeave: TNotifyEvent;
FOnMouseEnter: TNotifyEvent;
FID:
String;
procedure CMMouseEnter(
var msg:TMessage);
message CM_MOUSEENTER;
procedure CMMouseLeave(
var msg:TMessage);
message CM_MOUSELEAVE;
procedure SetFID(value:
String);
{ Private-Deklarationen }
protected
procedure DoMouseEnter;
dynamic;
procedure DoMouseLeave;
dynamic;
{ Protected-Deklarationen }
public
{ Public-Deklarationen }
published
property ID:
String Read FID
Write SetFID;
property OnMouseEnter:TNotifyEvent
Read FOnMouseEnter
Write FOnMouseEnter;
property OnMouseLeave:TNotifyEvent
Read FOnMouseLeave
Write FOnMouseLeave;
{ Published-Deklarationen }
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('
Zusätzlich', [TIDImage]);
end;
procedure TIDImage.SetFID(value:
String);
begin
If value<>FID
then
FID:=value;
end;
procedure TIDImage.CMMouseEnter(
var msg:TMessage);
begin
DoMouseEnter;
end;
procedure TIDImage.CMMouseLeave(
var msg:TMessage);
begin
DoMouseLeave;
end;
procedure TIDImage.DoMouseEnter;
begin
If Assigned(FOnMouseEnter)
then FOnMouseEnter(self);
end;
procedure TIDImage.DoMouseLeave;
begin
If Assigned(FOnMouseLeave)
then FOnMouseLeave(self);
end;
end.
[edit=Daniel B]Delphi-Tags eingefügt. MfG Daniel B.[/edit]