Hola,
Cita:
Empezado por roman
Creo que estás perdiendo el punto que señala Juan Antonio.
Estas violaciones de acceso se corrigen, como tú mismo ya lo descubriste, con el método Notification, que está precisamente para eso. Es justo el mecanismo que usa, por ejemplo, un DataSource y su propiedad DataSet.
|
No, no; si sé perfectamente por dónde va
Juan Antonio. Entiendo perfectamente que solamente necesito una referencia y no manejar por mi cuenta un "TActionList"... ¡pero es que me está dando los errores que digo y no consigo hacerlo de otro modo que como he dicho!
Ahora pienso en la cuestión de hacer uso del método "Notification", de otro modo que como lo hago ahora, claro está, supongo, no sé si bien:
Código Delphi
[-]
procedure TDecBrowser.Notification(Component: TComponent;
Operation: TOperation);
begin
inherited;
if (csDesigning in ComponentState) then
begin
if (Operation = opRemove) then
begin
if (Component = FAcciones) then
begin
FAcciones.RemoveFreeNotification(Self);
FAcciones := TCustomActionList.Create(Forms.Application);
end;
end;
end;
end;
El problema ahora mismo está en que si dejo sin crear la variable "FAcciones" al crear el componente ni siquiera puedo poner en un formulario un "TDecBrowser": violaciones de acceso a go-go. Recuerdo que antes busqué por la paleta de componentes alguno que tuviera una propiedad del tipo "TActionList" y que no di con ninguno...
¿Estáis probando esto? Quiero decir, ¿probáis puede hacerse como decís? Porque si es así os agradecería el propio código, más que nada, porque entonces estoy haciendo algo y aun algos mal o no me entero de nada en absoluto,... ambas cosas son posibles.