![]() |
![]() |
| Paypal | 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
|
||||
|
||||
|
NO sé como resolver este error
Me estoy volviendo loco. Harto de dar vueltas toda la mañana con un proyecto en Builder 6 he probado a crear un nuevo con sólo dos formularios: Un formulario vacío (Form1) y otro (login) creado dinámicamente y llamado desde el primero. No hay ningún evento ni nada, salvo desde se llama al segundo que está en el OnActivate del Form1. SIEMPRE, y no sé por qué, me sale este mensaje de error:
![]() Como podéis ver la pantalla lamada se miestra. ¿Alguienb me puede ayudar? |
|
#2
|
||||
|
||||
|
Por favor, Ángel, no olvides poner títulos descriptivos a tus preguntas, gracias
![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Bueno, el mensaje de error es bastante claro. Estás tratando de mostrar una ventana visible usando ShowModal. Posoblemente tienes el formulario del Login en el auto-create y dado que su propiedad Visible está en true, cuando llegas al OnActivate, la ventana ya está visible.
// Saludos |
|
#4
|
||||
|
||||
|
Cita:
Cita:
![]() Y eso del AutoCreate no acabo de entenderlo. |
|
#5
|
||||
|
||||
|
Bueno, supongo que en Builder es similar a Dephi. En opciones del proyecto debe venir una parte de formularios y ahí de los que se crean automáticamente. De todas formas, prueba poner la propiedad Visible del formulario Login en false en el inspector de objetos.
// Saludos |
|
#6
|
||||
|
||||
|
Autocreate es la forma por defecto, significa que la app creará automáticamente el formulario aunque no sea visible. Si no es autocreate lo debes crear tú, y encargarte de que sea destruido.
Cuando llegue a casa descargo tu ejemplo. Saludos. |
|
#7
|
||||
|
||||
|
Hola Angel.Matilla
También podes abrir el form (login) y, desde el ObjectInspector, ajustar su propiedad Visible a false. Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 25-09-2015 a las 20:41:34. |
|
#8
|
||||
|
||||
|
Estaba dándole vueltas a vuestros comentarios. Gracias a todos por ellos.
Cita:
Código:
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormActivate(TObject *Sender)
{
Application->CreateForm(__classid(TForm2), &Form2);
Form2->ShowModal();
delete Form2;
}
//---------------------------------------------------------------------------
|
|
#9
|
||||
|
||||
|
¿Y lo que ha comentado ecfisa?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#10
|
||||
|
||||
|
Prdón. No había visto tu mensaje Casimiro. La propiedad del vormulario ya está con Visible = true, por lo tanto...
|
|
#11
|
||||
|
||||
|
Cita:
![]() Y si pongo la propiedad visible a false, addemás del ShowModal() tendré que andar cambiado la misma cuando abra el mismo. |
|
#12
|
||||
|
||||
Sigo haciendo pruebas, y ahora si que me he perdido del todo. He creado un proyecto nuevo desde cero con los mismos formularios ¡y este funciona bien! Voy a indagar a ver que es lo que hay distinto entre ambos. |
|
#13
|
||||
|
||||
|
Lo que es distinto es la propiedad visible = false en el formulario que vas a mostrar como modal.
Saludos. |
|
#14
|
||||
|
||||
|
Cita:
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#15
|
||||
|
||||
|
Tienes razón. Fíjate que es una propiedad que normalmente no modifico cuando creo un formulario nuevo (salvo circunstancias especiales) y no me había preocupado porque siempre había funcionado bien. Algo debí tocas en el proyecto sin darme cuenta que cambió el valor a true. Muchas gracias.
|
|
#16
|
||||
|
||||
|
Hola.
Solo aclarar que, obviamente, la solución del mensaje #7 funciona por que el formulario fué creado en tiempo de diseño, ya que C++ Builder crea un archivo .DFM donde se almacenan las propiedades del formulario y los objetos contenidos en él. Si la creación se hubiera realizado en tiempo de ejecución, vg: Código PHP:
Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 28-09-2015 a las 15:59:07. Razón: agregar comentario |
|
#17
|
||||
|
||||
|
Cita:
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Solicito ayuda para resolver los problemas de este nuevo componente | José Luis Garcí | OOP | 11 | 28-08-2013 20:53:28 |
| ¿Como evitar este mensaje de error? | Deiv | HTML, Javascript y otros | 4 | 27-11-2006 21:46:38 |
| Me Da este error y no se como quitarlo | serhasae | Varios | 10 | 15-07-2006 16:36:41 |
| Como saber el origen de este error.. | n3mohack | Varios | 2 | 10-02-2006 21:05:28 |
| como resuelvo este error? | Ryu | Internet | 3 | 18-04-2005 19:10:39 |
|