Cita:
|
Bueno aunque la verdad no soy tan novato en delphi con lo que recien estado aprendiendo Visual Basic como debe ser y no empiricamente me he dado cuentaa de algunas cosas que no se si se puedan hacer con delphi y por eso recurro a ustedes.
|
Se puede.
Cita:
|
Lo primero seria si es que se puede hacer al igual que Visual de predefinir un Form para que se inicie primero.
|
Delphi por defecto crea todos los formularios de manera estática, por lo que al ejecutar tu aplicación, todos esos formularios están disponibles en memoria. Para modificar este comportamiento Shift+Ctrl+F11 o Menú: Project/Options... Tab: Forms y dejar en auto-create forms, solo las que desees que se creen en forma estática y pasar las demás al otro lado.
Todo esto, sirve de introducción a tu segunda pregunta, ya que la respuesta para la primera es elegir del ComboBox, etiquetado como Main Form (arriba de lo anterior), el formulario principal, es decir el formulario que tomará el control del programa y se mostrará al usuario.
Cita:
|
Lo segundo seria si es que existe algun comando para cerrar un form que ya no necesito como el Unload Me o Unload <Form> porque intente con Delphi el hacer por ej: Form2.close; pero no me cumple porque desde el Form1 estoy creando el Form2 o bueno supongo que es por eso.
|
Si creaste tu Form2 desde Form1 y lo mostraste con Show o ShowModal, debes destruirlo en el Form1 cuando el usuario cierre esa ventana. Recuerda que si creas un formulario, es decir una instancia de éste, lo estas creando en forma dinámica y no estática. Si queres mostrarlo, con un simple Show o ShowModal alcanzaría, pero... NO LO CREES, YA ESTA CREADO.
Otra opcion es cerrarlo y destruirlo desde el mismo formulario, en este caso Form2 (APLICALO SOLO PARA FORMULARIOS CREADOS DINAMICAMENTE). La manera es capturar el evento OnClose de Form2 y asignar a la variable Action la constante caFree. Esa sentencia destruye la instancia que creaste de Form2.
Hay muchas más maneras, pero con estas dos, creo que te podrás manejar mas que bien.
Ahh, y si solo querias cerrarlo tenes que utilizar el metodo Close. Ej. Form2.Close();
Igualmente aqui adjunto un ejemplo completo del manejo de multiples formularios SDI.