Código Delphi
[-]procedure Botones;
begin
btNuevo.Enabled:= (PermisoAlta) and
(Datasource.Active) and
(not CampoX.isnull) ;
BtEliminar.Enabled:=(Permisoeliminar) and
(Datasource.Active) and
(not CampoX.isnull) ;
btModificar.Enabled:=(PermisoModificar) and
(Datasource.Active) and
(not CampoX.isnull) ;
DBNIva.Enabled:=(PermisoModificar) and
(Datasource.Active) and
(not CampoX.isnull) ;
end;
siendo PermisoXXXXX los permisos que el usuario tiene en la opción que elija.
Esta procedure la llamo después de modificar, insertar, borrar, cambiar un campo, al entrar en el formulario, .... Toda la lógica de botones en una sola función. Una función por formulario.
Saludos