Hola...
El detalle es que las propiedades que son eventos son de un tipo especial. En el caso del evento
OnClick son del tipo
TNotifyEvent el cual está declarado como:
Código Delphi
[-]
type
TNotifyEvent = procedure (Sender: TObject) of object;
Esto es, que a la propiedad
OnClick solo le puedes asignar métodos de objeto con la misma firma que la declarada:
Código Delphi
[-]
TMyForm = class(TForm)
private
procedure DoOnClick(Sender: TObject);
end;
implementation
procedure TMyForm.DoOnClick(Sender: TObject);
begin
end;
BitBtn.OnClick := DoOnClick;
Para lo que tu necesitas, podrías usar la propiedad
Tag de los componentes. Esta propiedad es de tipo entero y bien podría almacenar el valor del ID.
Código Delphi
[-]
while ido
begin
boton := TBitBtn.Create(nil);
linea := Qry_Line.fieldbyname('idlinea').AsInteger;
boton.Tag := linea;
boton.OnClick := DoOnClick;
end;
procedure TMyForm.DoOnClick(Sender: TObject);
begin
if Sender is TBitBtn then
begin
with TBitBtn(Sender) do
begin
if Tag = 1 then
else
if Tag = 2 then
end
end
end;
Esto es solo un ejemplo, pero podría ayudarte a resolver tu problema.
Saludos...