Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   La función Ord() (https://www.clubdelphi.com/foros/showthread.php?t=11776)

soul6301 25-06-2004 00:20:48

La función Ord()
 
Hola:

Tengo un problema. Quería hacer un programa en el cual ingrese una letra en un componente TEdit y me aparezca su valor en código Ascii. Traté usando la siguiente sentencia:

Label1.Caption:= Ord(LeftStr(Edit1.Text,1));

Mi idea es obtener la primera letra del campo Edit1 y mostrar su código Ascii, pero me aparece un error de compatibilidad. Pensé que usando Ord() me sería sencillo, pero sólo acepta variable de Char. ¿Alguien puede ayudarme a realizar mi programa?

Gracias

roman 25-06-2004 00:53:30

El problema es que LeftStr devuelve un valor de tipo String y aunque tú solo extraes un caracter la función Ord no puede saberlo.

En lugar de eso usa:

Código Delphi [-]
if Edit1.Text <> '' then
  Label1.Caption := IntToStr(Ord(Edit1.Text[1]));

Nota que te corregí tres cosas. Primero cambié LeftStr(Edit1.Text, 1) por Edit1.Text[1] para obtener el primer caracter. Segundo, de cualquier forma no te iba a compilar por que Ord devuelve un entero y Caption es un String así que hay que convertir con IntToStr. Tercero, me aseguro que Edit1.Text no se vacío para que no te salte una excepción al intentar acceder a su primer caracter.

// Saludos

soul6301 27-06-2004 01:43:17

(Ches!) Hola:

Tienes razón. Bueno, respecto a primero transformar el valor de Ord desde integer a string lo había hecho en mi programa, pero al pedir ayuda, me olvidé de escribirla. Gracias, de seguro tu consejo me será útil.

Saludos.


La franja horaria es GMT +2. Ahora son las 17:01:42.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi