Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-02-2005
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
Red face Invalid TypeCast

Hola, extoy teniendo un pequeño problema con esta linea de codigo..
luego del "VsiNgle", en el momento de compilar me da un error
INVALID TYPECAST.. la verdad es que no se porque lo da.. esta es la linea en cuestion..

Código Delphi [-]
      result := 'varSingle ' + IntToHex(Longint(TVarData(v).VSingle), 8);
Responder Con Cita
  #2  
Antiguo 28-02-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Todo apunta a que el moldeado de datos no tiene éxito ya que la función IntToHex expera únicamente un entero y el número de digitos que devolverá en la conversión.

Prueba a hacer la conversión antes de pasarle el valor.

Esto funciona sin problemas:
Código Delphi [-]
 Function LoQueSea(n:Integer):String;
 begin
  result := 'varSingle ' + IntToHex(n, 8);
 end;
 procedure TForm1.Button1Click(Sender: TObject);
 begin
 ShowMessage(LoQueSea(256));
 end;
Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 28-02-2005
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
Gracias!!!
Responder Con Cita
  #4  
Antiguo 28-02-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Qué pretendes hacer con ésto?

Longint(TVarData(v).VSingle)

TVarData(v).VSingle será un número real. No puedes moldearlo a un entero. Si lo que deseas es omitir los decimales entonces usa Trunc.

// Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 02:46:29.


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
Copyright 1996-2007 Club Delphi