|
|
|
|
- Presentación
- Abrir una ventana
- Abrir una ventana principal
- Abrir una ventana infantil
- Apertura de la ventana de un hermano
- Apertura con alias
- Ventanas superpuestas
- Minimizar una ventana
- Ventana "libre" abierta por OpenChild u OpenSister
- Ventana padre MDI
- Ventana MDI hija
- Recordatorio
- Ventana actual
- Cerrar una ventana infantil o una ventana de hermanos
Gestión no modal de una ventana
La ventana que abre otra ventana se llama ventana padre; las ventanas abiertas por la ventana padre se llaman ventanas hijas. Todas las ventanas hijas abiertas por la misma ventana padre son ventanas hermanas. Este modo de apertura le permite gestionar la multi-ventana. Con la apertura no modal de una ventana hija: - la ventana hija puede estar en edición al mismo tiempo que la ventana padre que la abrió.
- una vez que se cierra una ventana secundaria, otra ventana secundaria se convierte en la ventana actual; si no hay ninguna ventana secundaria, la ventana principal se convierte en la ventana actual
- si la ventana principal está cerrada, sus ventanas hijas están cerradas. Si una ventana secundaria se niega a cerrarse, la ventana principal y las ventanas secundarias que siguen a esta ventana no se cerrarán.
- si la ventana secundaria está minimizada, las otras ventanas no están minimizadas. La Icon de la ventana es la de la ventana (o la del proyecto si la ventana no tiene Icon).
- si la ventana de los padres se minimiza, todas las ventanas de los hijos se convierten temporalmente en Invisible.
Non: Apertura modal de una ventana hermana: - todas las ventanas hermanas pueden estar en modo de edición al mismo tiempo.
- cuando se cierra una ventana hermana, otra ventana hermana se convierte en la ventana actual.
- si se minimiza la ventana del hermano, las otras ventanas no se minimizan. La Icon de la ventana es la de la ventana (o la del proyecto si la ventana no tiene Icon).
Abrir una ventana principal Se abre una ventana de padres por entablar. Abrir una ventana infantil Se abre una ventana secundaria desde una ventana padre MDI. Estas ventanas hijas pueden tener los siguientes tipos: El modo de apertura de la ventana depende del tipo de ventana. 1. ventana"niño MDI" window MDIOpen abre una ventana "MDI child" sin modelo a partir de una ventana "MDI parent". Cuando se llama a MDIOpen se realizan las siguientes operaciones: - Ejecutando las "Declaraciones Globales" de Event de la ventana.
- Ejecutar los eventos de inicialización de los controles (el orden es indefinido).
- Visualización de la ventana (esta ventana es siempre una ventana secundaria de la ventana principal de MDI).
Observación: Las ventanas MDI hijas siempre se abren en la ventana principal (no se pueden mostrar fuera de la ventana principal).. MDIWindowMenú se utiliza para organizar la visualización de las ventanas MDI hijas en la ventana MDI padre (visualización en cascada o en mosaico).
2. Ventana"Libre" abierta como ventana infantil OpenChild abre ventanas "libres" sin modelo a partir de una ventana "padre MDI". Cuando se llama a OpenChild se realizan las siguientes operaciones: - Ejecutando las "Declaraciones Globales" de Event de la ventana del niño,
- Ejecutar los eventos de inicialización de los controles (el orden es indefinido),
- Ejecución de los eventos que siguen a la llamada a OpenChild de la ventana padre,
- Mostrar la ventana hija (la ventana padre sigue siendo la ventana actual).
Observación: Las ventanas secundarias no MDI se pueden mostrar fuera de la ventana principal, se pueden mostrar en cualquier lugar de la pantalla.
Apertura de la ventana de un hermano Se abre una ventana de hermanos desde una ventana infantil. Estas ventanas hijas pueden tener los siguientes tipos: El modo de apertura de la ventana depende del tipo de ventana. 1. ventana"niño MDI" window MDIOpen abre una ventana "MDI Child" sin modelo a partir de una ventana "MDI parent" o "MDI child". Las diferentes ventanas infantiles son ventanas hermanas. 2. Ventana"Libre" abierta como ventana hermana OpenSister se utiliza para realizar una apertura no modal de ventanas "Libres" desde una ventana hija. Cuando se llama a OpenSister se realizan las siguientes operaciones: - Ejecutando las "Declaraciones Globales" de Event de la ventana de los hermanos,
- Ejecutar los eventos de inicialización de los controles (el orden es indefinido),
- Ejecución de los eventos que siguen a la llamada a OpenSister de la ventana de llamada,
- Visualización de la ventana del hermano.
Observación: Las ventanas hermanas MDI siempre se abren en la ventana principal (no se pueden mostrar fuera de la ventana principal).. MDIWindowMenú se utiliza para organizar la visualización de las ventanas MDI hijas en la ventana MDI padre (visualización en cascada o en mosaico).
Apertura con alias La misma ventana (ventana para niños o hermanos) se puede abrir varias veces. Esta ventana es su propia ventana hermana. Cada ventana abierta se identifica con un alias. El alias se pasa como parámetro a MDIOpen, OpenSister o OpenChild. Si no se especifica ningún alias al abrir una ventana que ya está abierta, WINDEV asigna automáticamente un alias a la ventana. // Open CUSTFORM with CUSTOMER1 alias OpenSister("CUSTOMER1=CUSTFORM") // Change of window with input in CUSTNAME control SetFocusAndReturnToUserInput("CUSTOMER1.CUSTNAME") // Handle a control with alias WindowName is string WindowName = PreviousWin() IF WindowName.CustName = "" THEN // Customer name not entered Error("No customer name was entered") SetFocusAndReturnToUserInput(WindowName + ".CUSTNAME") END
Después de su apertura, una ventana para niños se muestra "en la parte superior" de la ventana de los padres y una ventana para hermanos se muestra en la parte superior de la penúltima ventana para hermanos. To especificar que la ventana abierta se muestra: - por encima de todas las ventanas (incluso las inactivas), incluyendo las ventanas de otras aplicaciones de Windows en curso, se debe utilizar la constante AboveAll (OpenChild, OpenSister or WinStatus).
- por encima de sus ventanas hermanas (incluso las Inactive), debe utilizar la constante Above (OpenChild, OpenSister o WinStatus).
Ventana "libre" abierta por OpenChild u OpenSister Si la ventana está minimizada, las otras ventanas no lo están.. El Icon utilizado es el de la ventana (o el del proyecto si la ventana no tiene associated Icon). Ventana padre MDI Si la ventana se minimiza, todas las ventanas hijas se minimizan. El Icon utilizado es el de la ventana (o el del proyecto si la ventana no tiene associated Icon). Ventana MDI hija Cuando se minimiza, la ventana se minimiza en la ventana padre, la Icon aparece en la barra de título. MDIWindowMenú se utiliza para minimizar todas las ventanas MDI hijas y para restaurarlas. Recordatorio Una ventana puede ser minimizada: Una ventana puede ser restaurada: Una vez que se abre una ventana, la ventana actual no se modifica. - CurrentWin devuelve el nombre de la ventana (o alias) que tiene el foco.
- AnteriorGanar devuelve el nombre de la ventana (o alias) que anteriormente tenía el foco.
To cambiar la ventana actualmente en edit: - el usuario hace clic en otra ventana.
- utilizar SetFocusAndReturnToUserInput para forzar la entrada en la ventana pasada como parámetro (la ventana debe incluir al menos un control editable).
MDIActive devuelve el nombre de la ventana MDI hija que se muestra en primer plano. Cerrar una ventana infantil o una ventana de hermanos Las ventanas para niños y hermanos se cierran con Cerrar. Una vez que una ventana hija se cierra, una de las ventanas hermanas se activa. Si no existe una ventana para los hermanos, la ventana para los padres se convierte en Active. Una vez que una ventana hermana se cierra, otra ventana hermana se activa. If the parent window is closed, its child windows are closed. Si una ventana infantil se niega a cerrarse, se interrumpe el cierre.: la ventana principal y las ventanas hermanas que siguen a la ventana secundaria no están cerradas ; las ventanas secundarias que ya están cerradas permanecen cerradas. To para evitar que se cierre una ventana infantil no MDI, se debe añadir el siguiente Line en el código de cierre de la ventana infantil: // ControlName is a control of the child window SetFocusAndReturnToUserInput(ControlName)
Para evitar que una ventana MDI hija se cierre,: - crear una control Botón associated con la combinación de teclas Alt + F4.
- escriba el siguiente código en el código de clic de la control Botón:
SetFocusAndReturnToUserInput()
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|