2010-08-10 10 views
7

Estoy usando el constructor Borland C++. Tengo una aplicación donde quiero que el formulario principal se oculte hasta que se presione un botón en un formulario diferente. Establecí el valor Visible en el formulario principal en falso, pero aún aparece cuando ejecuto el programa. ¿Alguien sabe qué hacer?¿Cómo configuro mi MainForm para que se oculte cuando se inicia mi programa?

+0

No sé cuánto C++ Builder resúmenes cosas, pero si no lo hace y tiene un WinMain() y luego buscar un 'llamada ShowWindow' después de la' CreateWindow' - se puede llamar a ese SW_SHOWMINIMIZED o similar. Si no puede ver WinMain, tendrá que buscar dentro de su marco para encontrar WinMain y ver cómo puede cambiar esto. – Rup

Respuesta

7

Eche un vistazo a la propiedad TApplication ShowMainForm.

Aquí hay un ejemplo basado en las instrucciones en online help.

  1. Establecer la forma principal visible propiedad en false.

  2. En el menú seleccione Proyecto -> Ver origen para visualizar el archivo de proyecto principal.

  3. Agregue el siguiente código después de la llamada a Aplicación-> CreateForm y antes de la llamada a Aplicación-> Ejecutar.

    Aplicación-> ShowMainForm = false;

Usted debe terminar con algo como esto.

try 
{ 
    Application->Initialize(); 
    Application->MainFormOnTaskBar = true; 
    Application->CreateForm(__classid(TMainForm), &MainForm); 
    // extra code to hide main form 
    Application->ShowMainForm = false; 
    Application->Run(); 
} 
+0

¡Muchas gracias! – Ben313

2

Hay una demo que viene con C++ Builder que hace esto se puede encontrar en las manifestaciones \ cpp \ apps \ twoforms

"primero" es la forma con el botón que muestra "Segundo"

El controlador de eventos OnClick del botón crea el nuevo formulario con nuevo, y luego llama a ShowModal() Puede usar simplemente Show() si no pretende ser un formulario modal.

Cuestiones relacionadas