PDA

Ver la Versión Completa : Attibute en Clases Delphi


elrayo76
13-02-2015, 14:34:38
Estoy rediseñando unas clases que tengo y hay algo que no se como resolverlo. Es algo que lo he visto en .NET pero no creo que nunca lo he visto en Delphi.

.NET

[PrimaryKey] ---> esto es un atributo de la propiedad
Property int Codigo
{
get {}
set {}
}

Esto mismo que muestro de .NET no se como resolverlo en Delphi. Me refiero a poder indicar algún atributo a una propiedad. Desde ya que los atributos no exiten como tales en el lenguaje, sino que son definidos por el programador. Lo que si existe es el tipo Attibute para poder definirlos como tales.

Espero haberme explicado y cualquier cosa no duden en preguntar.

Saludos,
El Rayo

Casimiro Notevi
13-02-2015, 14:48:19
Como a todos los novatos, te recuerdo que pongas los tags al código fuente, ejemplo:

http://www.clubdelphi.com/images/UtilizarTAGs.png

Gracias :)


¡Ah!, pero si no eres novato


.

maeyanes
13-02-2015, 15:51:04
Hola...

Desde Delphi 2010 (si más no recuerdo), existe la clase TCustomAttribute la cual sirve para lograr lo que quieres. Esta clase se puede usar junto con el RTTI extendido para obtener los valores en tiempo de ejecución.

Un pequeño ejemplo:


PrimaryKey = class(TCustomAttribute);


TMyObject = class
[PrimaryKey]
Key: Integer;
// ... más código...
end;


Aquí puedes buscar más información: Introducing Attributes (http://forum.codecall.net/topic/76463-introducing-attribute/).

También en la ayuda de Delphi puedes buscar más información.



Saludos...

elrayo76
13-02-2015, 19:00:43
Perdón por no poner los tags correspondientes, fue un descuido que no volverá a ocurrir.

También gracias por la respuesta.

Saludos,
El Rayo