FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Help!!! Error al codificar Delphi a C++ Builder
Buenas primero que nada este es mi primer post y pues un saludo al "Club Delphi"
Para empezar tego un serio problema en la transformacion de Delphi a C ++ Builder 6 pues... con eso de que no hay mucha informacion de cbuilder en cuanto al manejo de bases de datos uno se llega a complicar bastante ... ahora que en delphi pues hay de todo ... bueno pues navegando en el club delphi encontre el "Tutorial Programa Ejemplo Ado, MsAccess (Novatos)" http://wiki.clubdelphi.com/wiki/inde...ría:Tutoriales echo en Delphi y pues 10 puntos.. y al pasarlo a C++ Builder 6 sorpresa el codigo tenia errores en builder (pruebenlo y veran que si da error al compilar)cambie todo de arriba a abajo, lei y re-lei el tutorial (ojo esta bien explicado ) cambie los := por :, el . por ->, respete mayusculas, etc., etc., etc, y pues nada me perdi... Delphi es versatil ¿porque C++ Builder no pudiera serlo? //---Código en Delphi (este es el primer codigo a arreglar que no jala en builder)
//--- Y ésta la codificación en C++ Builder 6 (lo que esta en rojo es donde da el error, porque ) Código:
void __fastcall TForm1::FormCreate(TObject *Sender) { DTP1->DateTime = Now(); // inicio la fecha al dia de hoy Banco->Active = true; // activo la tabla Banco->Last(); // le indico que lea el ultimo registro SumRet->Active = true; // activo el query SumDep->Active = true; // activo el query // coloco el resultado de (SumDep - SumRet) en el edit ESalTot->Text = FloatToStr(SumDep->Fields[0]->AsFloat - SumRet->Fields[]->AsFloat); // establecemos los dbedits como desactivados DBNTransac->Enabled = false; DBDescrip->Enabled = false; DBRetiros->Enabled = false; DBDeposit->Enabled = false; DBSalAnt->Enabled = false; // Deshabilitamos el combobox CBTipo->Enabled = false; // Deshabilitamos el navegador DBNavigator1->Enabled = false; // escondemos los botones, con esto evitamos cometer errores DBRetiros->Visible = false; DBDeposit->Visible = false; } El mensaje de error: [C++ Error] UBanco.cpp(33): E2288 Pointer to structure required on left side of -> or ->* Cual mi error... o interprete mal las lineas echas en Delphi ? Sera el único error que encontre o habra más? Alguien hizo el tutorial y lo pudo solucionar? De antemano Gracias y suerte a todos los integrantes del "Club Delphi" Saludos amigos... |
#2
|
||||
|
||||
No lo he analizado con mucho detalle, pero a primer golpe de vista encuentro un error. No se si será un error de mera transcripción:
Código:
// coloco el resultado de (SumDep - SumRet) en el edit ESalTot->Text = FloatToStr(SumDep->Fields[0]->AsFloat - SumRet->Fields[]->AsFloat); Código:
// coloco el resultado de (SumDep - SumRet) en el edit ESalTot->Text = FloatToStr(SumDep->Fields[0]->AsFloat - SumRet->Fields[0]->AsFloat); En ocasiones se debe utilizar sobre una variable llamada Items... que no aparece en delphi. Para C++ el operador -> se utiliza cuando se llama desde un puntero a un objeto (como lo son los derivados de VCL) y el operador punto "." se utiliza cuando el objeto no es un puntero. Esta forma tan estricta está diseñada para evitar errores con punteros, de forma que obliga al programador a conocer, en todo momento, si está trabajando con punteros o con objetos propiamente dichos. No se si me paso explicando obiedades, pero al preguntar por la "versatilidad" del delphi ma ha parecido oportuno. Saludos. Última edición por escafandra fecha: 07-05-2008 a las 14:33:28. |
#3
|
|||
|
|||
Cierto error de transcripcion pero igual no jala
Cierto escafandra me comi el indice que por fuerza si o si debe tener , no me di cuenta en la codificacion pero aun asi como explico anteriromente el error sale en la parte marcada en rojo
Código:
// coloco el resultado de (SumDep - SumRet) en el edit ESalTot->Text = FloatToStr(SumDep->Fields[0]->AsFloat - SumRet->Fields[]->AsFloat); Gracias por la correccion |
#4
|
||||
|
||||
Prueba esto:
Código:
// coloco el resultado de (SumDep - SumRet) en el edit ESalTot->Text = FloatToStr(SumDep->Fields->Items[0]->AsFloat - SumRet->Fields->Items[0]->AsFloat); Investiga el tipo Fields ¿Aque apunta? Apunta a un objeto o a puntero. Si apunta a un objeto quizas funcione esto: Código:
// coloco el resultado de (SumDep - SumRet) en el edit ESalTot->Text = FloatToStr(SumDep->Fields[0].AsFloat - SumRet->Fields[0].AsFloat); Última edición por escafandra fecha: 07-05-2008 a las 14:39:10. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
linker error en c++ builder 6 | mns | C++ Builder | 2 | 28-04-2008 08:00:02 |
Ayuda! Necesito Codificar colores en delphi | Noiser | Varios | 2 | 10-04-2008 14:16:05 |
Error de impresion en el Report Builder | Dark_RavenM | Impresión | 5 | 10-04-2008 01:45:42 |
Linker error : Problema con c++ builder | waremovil | C++ Builder | 1 | 07-04-2008 11:30:01 |
Error del linker c++ builder 6 | davomb | C++ Builder | 1 | 07-06-2006 18:23:03 |
|