Club Delphi  
    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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-02-2008
Mialom Mialom is offline
Registrado
 
Registrado: feb 2008
Ubicación: España
Posts: 5
Poder: 0
Mialom Va por buen camino
Hola a todos,

el formulario no se crea automaticamente al ejecutar la aplicacion, ya que solo dejo como formularios autocreados el main form.
Respecto a si con un short da error la verdad es que no lo he probado pero es una buena idea aunque creo que pudiera dar el mismo resultado.

De todas formas muchas gracias por las ideas, siempre entre todos sacaremos algo mas en claro que una sola mente.

Un saludo
Responder Con Cita
  #2  
Antiguo 18-02-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Cita:
Empezado por Mialom Ver Mensaje
Hola a todos,

el formulario no se crea automaticamente al ejecutar la aplicacion, ya que solo dejo como formularios autocreados el main form.
Respecto a si con un short da error la verdad es que no lo he probado pero es una buena idea aunque creo que pudiera dar el mismo resultado.

De todas formas muchas gracias por las ideas, siempre entre todos sacaremos algo mas en claro que una sola mente.

Un saludo
Pues... Yo soy muy aficionado a pasar parámetros en los constructores. Nunca he tenido ese problema. Al ver tu caso hice el experimento, como comentabas. Y pensando en el problema de los autocreados, deje el form que iba a recibir el parámetro añadido (int) como autocreado. Entonces apareció el error que tu mencionas. Lo cambié a disponible y desapareció el error.

De todas formas tu hablas de un Form1 (TForm1(TComponent* Owner, int x)), este por defecto, y según los denomina Builder, es el mainForm. Te comento esto porque ese siempre es autocreado. En este caso no tiene sentido el paso de parámetros en el constructor. Yo siempre les doy otros nombres mas personales...

Repito, a mi con los formularios disponibles, no me pasa el error "Stack Overflow".

Repasa toda la configuración de tu proyecto....

Saludos.
Responder Con Cita
  #3  
Antiguo 18-02-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Al añadir un parámetro, te estas cargando toda la herencia. Además de hacer incompatible tu ventana con toda la VCL (de ahí el problema de autocreate Forms).

La ventana ya se podía crear sin tu parámetro "x", eso quiere decir, que no es realmente necesario modificar el constructor.

Se debe crear una propiedad, todo lo demás son chapuzas, por mucho C++ que se use.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 18-02-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
No creo que te cargues la herencia al colocar un parámetro en un constructor de una clase VCL.

El hecho de que ese parámetro sea una propiedad, no cambia nada, de hecho cualquier elemento de la clase que, no sea una función,
es una propiedad. En ocasiones ese parámetro, no tiene porqué almacenarse en ninguna variable de la clase, y por lo tanto deja de ser una propiedad.

Estoy de acuerdo que posiblemente ese parámetro pueda pasarse fuera del constructor, pero eso no quiere decir que no pueda hacerlo como ha decidido. de hecho al hacerlo así se simplifica la sintaxis.

Yo suelo programar un formulario que denomino TConfig al que le paso un parámetro en el constructor que es otra clase o estructura con los datos de la configuración de mi programa. Esta forma de abordar el problema me facilita mucho la tarea. Por otro lado es la forma de programar en C++, y aunque las VCL se salen un poco de la ortodoxia, no son incompatibles.

Son formas diferentes de ver las cosas.

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Stack overflow al reabrir una tabla jzginez Conexión con bases de datos 1 24-04-2007 16:52:53
Stack Overflow agonzalez Varios 5 08-12-2006 22:26:46
Stack Overflow Mariana Varios 14 30-10-2003 11:37:47
Pasar un parametro en la llamada a un form apicito OOP 17 13-08-2003 12:30:45


La franja horaria es GMT +2. Ahora son las 09:40:07.


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