constructor TZiffer.Create(AOwner : TComponent; Parent : TWinControl);
const
Positionen : array[0..6,0..3] of integer = ((9,33,48,16),(33,9,16,8),(9,33,8,16),(33,9,16,48),(33,9,56,48),(9,33,88,16),(33,9,56,8));
var
i : Byte;
begin
vMain := TPanel.Create(AOwner);
vMain.Parent := Parent;
vMain.Width := 65;
vMain.Height := 105;
for i := 0 to 6 do
begin
vPanels[i] := TPanel.Create(AOwner);
with vPanels[i] do
begin
Parent := vMain;
Height := Positionen[i,0];
Width := Positionen[i,1];
Top := Positionen[i,2];
Left := Positionen[i,3];
end;
end;
end;
procedure TZiffer.SetValue(Value : Byte);
const
Werte : array[0..9,0..6] of byte = ((0,1,1,1,1,1,1),(0,0,0,1,1,0,0),(1,0,1,1,0,1,1),(1,0,1,1,1,1,0),(1,1,0,1,1,0,0),(1,1,1,0,1,1,0),(1,1,1,0,1,1,1),(0,0,1,1,1,0,0),(1,1,1,1,1,1,1),(1,1,1,1,1,1,0));
var
i : byte;
begin
for i := 0 to 6 do vPanels[i].Visible := bool(Werte[value,i]);
vValue := Value;
end;