Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 07-12-2013
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.211
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Hola cavdrz, bienvenido al foro.

Tu problema se debe a los casting entre char* y AnsiString. Fijate en la declaración:
Código:
extern PACKAGE void __fastcall ShowMessage(const AnsiString Msg);
Builder hace un casting automático de char* a AnsiString porque este último tiene definido un constructor de esta forma:
Código:
__fastcall AnsiString(const char* src);
Así, el compilador sabe crear un AnsiString desde un char* y la conversión será automática.

Sin embargo el paso contrario tienes que explicitarlo. Fíjate en la declaración de Application->MessageBox:

Código:
int __fastcall TApplication::MessageBox(const char * Text, const char * Caption, int Flags);
Para que tu código funcione basta que hagas esto:
Código:
Application->MessageBox(("Hola " + Edit1->Text).c_str(), "Mensaje",
        MB_OK | MB_ICONINFORMATION);
Que sería lo mismo que:
Código:
Application->MessageBox((AnsiString("Hola ") + Edit1->Text).c_str(), "Mensaje",
        MB_OK | MB_ICONINFORMATION);
La función c_str() convierte un AnsiString en un char*

Espero haberme sabido explicar.


Saludos.
Responder Con Cita
 



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
de un principiante dtomeysoto MySQL 1 02-04-2008 16:11:42
Principiante krloz99 Varios 3 08-06-2007 15:59:30
problemita de principiante chona Firebird e Interbase 3 20-07-2004 16:46:30
principiante olybola Conexión con bases de datos 3 17-05-2004 19:56:36
Principiante fjcg02 Internet 3 10-03-2004 20:54:50


La franja horaria es GMT +2. Ahora son las 08:12:43.


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