Insbesondere Robert : nur nicht nervös werden. Vor allem nicht mit Sachen rumwerfen, die nur in seltenen Spezialfällen gebraucht werden. 8) Was soll überhaupt gemacht werden ? Ein Label erhält ein zusätzliches integer-Feld, welches im
OI eingestellt werden kann, oder ? Dieser Wert soll dann später als Caption angezeigt werden. Warum deshalb die Caption verschwinden soll ist mir schleierhaft und wohl auch eher uninteressant.
Delphi-Quellcode:
unit Intlbl;
interface
uses
Windows, Messages, SysUtils, Graphics, Classes, Controls, DBCtrls, StdCtrls;
procedure Register;
type
TIntLabel =
class(TCustomLabel)
private
FWert : integer;
procedure SetWert(
const Value: integer);
public
constructor Create(AOwner: TComponent);
override;
destructor Destroy;
override;
published
property Wert: integer
read FWert
write SetWert;
end;
implementation
constructor TIntLabel.Create(AOwner: TComponent);
begin
inherited;
Wert := 0;
Caption := IntToStr (Wert);
end;
destructor TIntLabel.Destroy;
begin
inherited;
end;
procedure TIntLabel.SetWert(
const Value: integer);
begin
FWert := Value;
Caption := IntToStr (Value);
end;
procedure Register;
begin
RegisterComponents('
Eigene', [TIntLabel]);
end;
end.
Reicht das nicht aus ? Falls eine kleinere Änderung eines Labels nur mit "virtual strict protected overload abstract" und dem verstecken vorhandener Sachen gemacht werden soll, dann aber ohne mich. 8) Falls es den Fragesteller überhaupt noch interessiert : alles schließen -> Datei -> neu -> weitere ->
Package -> da den Code hier einfügen als
Unit (vorher in
Unit abspeichern). Dann noch compilieren und installieren. Was im
OI in das Feld Wert eingetragen wird, das steht dann in der Caption.