Ich wollte dasjetzt testen und hab fix eine neue Komponente erzeugt.
Delphi-Quellcode:
unit FormEditor;
interface
uses
SysUtils, Classes, Controls, Forms, Messages, Windows;
type
TEditableForm =
class(TCustomForm)
private
//
public
procedure WMNChittest(
var msg:TWMNChittest);
Message WM_NChittest;
end;
TFormEditor =
class(TScrollBox)
private
FWindow: TEditableForm;
protected
{ Protected-Deklarationen }
public
constructor Create(AOwner: TComponent);
override;
destructor Destroy;
override;
published
{ Published-Deklarationen }
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('
CapSystems', [TFormEditor]);
end;
{ TEditableForm }
procedure TEditableForm.WMNChittest(
var msg: TWMNChittest);
begin
DefaultHandler(Msg);
if Msg.result = HTCAPTION
then
Msg.result := HTCLIENT;
end;
{ TFormEditor }
constructor TFormEditor.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
if not (csDesigning
in ComponentState)
then
begin
FWindow := TEditableForm.Create(Self);
with FWindow
do
begin
Parent := Self;
Visible := True;
end;
end;
end;
destructor TFormEditor.Destroy;
begin
if not (csDesigning
in ComponentState)
then
FWindow.Free;
inherited Destroy;
end;
end.
Leider bekomme ich zur Laufzeit folgende Fehler:
Zitat:
---------------------------
Benachrichtigung über Debugger-
Exception
---------------------------
Im Projekt Project1.exe ist eine
Exception der Klasse EResNotFound mit der Meldung 'Ressource TEditableForm wurde nicht gefunden' aufgetreten.
---------------------------
Anhalten Fortsetzen Hilfe
---------------------------
An was könnte das liegen?