Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-01-2006
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Creación dinamica de Formularios

Hola a todos

Hace tiempo pregunte sobre la creación dinamica de formularios teniendo el nombre del formulario como un String ya que dichos nombres estaban en mi base de datos, me hicieron una referencia a este hilo donde explica Roman muy bien sobre las referencias de clase que soluciono mi problema y al que doy muchas gracias por ello

http://www.clubdelphi.com/foros/showthread.php?t=2656

durante todo este tiempo solo necesite llamar una forma por opción que cargo en mi menu, pero ahora necesito llamar a 2, primero llamar de mi menu de opciones a la primera forma digamos Form2 y de esta llamar a otra Form4 en la cual hago operaciones y el resultado volverlo a pasar a Form2 como ven las 2 ya estan creadas pero en el momento de pasar de Form4 a Form2 me sale un error de access violation es como si no estuviera creada Form2 pero esta ahi.

Les pongo un pequeño ejemplo para que lo entiendan mejor.

Utilizo delphi7

Ayudenme por favor, se los agradece un monton.
Archivos Adjuntos
Tipo de Archivo: zip formas.zip (6,5 KB, 45 visitas)
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.

Última edición por Caro fecha: 24-01-2006 a las 15:09:30.
Responder Con Cita
  #2  
Antiguo 25-01-2006
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.235
Poder: 20
ElKurgan Va camino a la fama
El fallo que te está ocurriendo es el siguiente:

Estás usando una factoría de Formularios a los cuales añades el nombre de la referencia de clase (en tu ejemplo, TForm2); cuando haces click y creas un formulario a partir de la referencia de clase tienes un formulario de tipo "TForm2" (que en realidad, es un puntero a un objeto de tipo formulario); sin embargo, al llamar al formulario 4, le pones estas líneas:

Código:
     IF edit1.Text<>'' THEN
     begin
         form2.Edit1.Text:=edit1.Text; // <<<<< ¿Form2?
Aqui estás llamando a UNA VARIABLE de tipo TForm, que no ha sido creada en ningún sitio, por lo que te da el error de Access Violation.

Yo lo que haría en TForm4 es lo siguiente:

Código:
procedure TForm4.Button1Click(Sender: TObject);
begin
  IF edit1.Text = '' THEN
    showmessage('Debe llenar la caja');
  else
    close;
end;
Y en el propio formulario TForm2 es donde daría valor al EditBox:

Código:
procedure TForm2.Button1Click(Sender: TObject);
begin
  Application.CreateForm(Tform4,form4);
  try
    form4.ShowModal;
    self.Edit1.Text := Form4.Edit1.Text; 
  finally
    form4.Free;
  end;
end;
Espero haber sido claro

Un saludo
Responder Con Cita
  #3  
Antiguo 25-01-2006
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Me quedo todo claro, mil gracias
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
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
generación dinámica de formularios por xsd samame .NET 0 05-01-2006 16:20:43
creación de forms dinámica dandia28 OOP 2 30-12-2005 17:18:34
creación dinámica de componentes Mariana Varios 1 20-09-2005 17:07:07
Creacion dinamica menu morfeo21 Varios 1 30-04-2004 17:33:14
Proyecto con estructura dinámica (creación de botones) CORBATIN Conexión con bases de datos 12 26-04-2004 14:41:30


La franja horaria es GMT +2. Ahora son las 17:43: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
Copyright 1996-2007 Club Delphi