Ver Mensaje Individual
  #7  
Antiguo 11-11-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Como te explica claramente Casimiro en el ejemplo, no son strings que se puedan mostrar directamente, son de tipo ordinal. Cada nombre definido (cArriba, cAbajo, cIzquierda, cDerecha) tiene una órdinalidad que comienza desde cero y termina en el enésimo término.

Para mostrar el valor de un tipo ordinal debés hacer:
Código Delphi [-]
begin
  ShowMessage(IntToStr(Ord(cDerecha))); // muestra: 3
end;

Para realizar la operación inversa, es decir, dado el órden obtener el nombre, se puede usar la función GetEnumName:
Código Delphi [-]
uses TypInfo;
...
begin
  ShowMessage(GetEnumName(TypeInfo(TPosicion), 2)); // muestra: cIzquierda
end;

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 12-11-2011 a las 09:24:29.
Responder Con Cita