Hola jzginez.
En principio, el método de lectura de la segunda declaración de propiedad,
Código Delphi
[-]
...
Property Resultado(ID: Integer): Integer Read LeeBoton2(ID: Integer);
viola la definición de esta última.
Cuando en una propiedad los módos de lectura y escritura son métodos, se tiene que cumplir que:
- El método de lectura sea una función sin parámetros que devuelva un valor del mismo tipo que el declarado en la propiedad.
- El método de escritura sea un procedimiento con un sólo parámetro cuyo tipo sea igual al declarado en la propiedad.
Por otro lado,
Embarcadero dá una aclaración sobre el error que comentas en este enlace:
E2271 Property getters and setters cannot be overloaded (Delphi)
Saludos