AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Controles, páginas y ventanas / Funciones de ventanas
  • Apertura modal/Apertura no modal
  • Las diferencias entre las constantes Invisible y OutsideScreen
  • Ventana inactiva o Invisible
  • Cerrar la ventana
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Identifica o modifica el estado de la ventana.
Observación: La función WinStatus también permite comprobar la existencia de una ventana.
Ejemplo
// Identify the status of current window
ResWinStatus = WinStatus()
// Modify the state of a window
SWITCH WinStatus(WIN_WindowName)
CASE Active
WinStatus(WIN_WindowName, Grayed)
CASE NotFound
Open(WIN_WindowName)
END
Sintaxis

Identificar el estado de la ventana Ocultar los detalles

<Result> = WinStatus([<Window used>])
<Result>: Constante
Estado actual de la ventana:
ActiveVentana Active (ventana en edición, aunque no tenga el foco).
DisplayOnlyVentana Inactive (esta ventana no está en edición).
GrayedLos controles de la ventana son Grayed.
InvisibleVentana Invisible en la pantalla y Inactive.
NotFoundVentana cerrada o no encontrada.
OutsideScreenVentana activa mostrada fuera del área de la pantalla de Visible.
Universal Windows 10 App Esta constante no está disponible.
<Window used>: Nombre opcional de la ventana o cadena opcional
Nombre o alias de la ventana que se va a utilizar.
Si no se especifica este parámetro o si corresponde a una cadena vacía ("""), se devuelve el estado de la ventana actual..

Modificar el estado de la ventana Ocultar los detalles

<Result> = WinStatus(<Window used> , <Window status>)
<Result>: Constante
Estado después de la modificación:
ActiveVentana Active (ventana en edición).
DisplayOnlyVentana Inactive (esta ventana no está en edición).
GrayedLos controles de la ventana son Grayed.
InvisibleVentana Invisible en la pantalla y Inactive.
NotFoundVentana cerrada o no encontrada.
OutsideScreenVentana activa mostrada fuera del área de la pantalla de Visible.
Universal Windows 10 App Esta constante no está disponible.
<Window used>: Nombre de la ventana o cadena
Nombre o alias de la ventana que se va a utilizar.
Si este parámetro corresponde a una cadena vacía (""), se modifica el estado de la ventana actual.
<Window status>: Constante
Especifica el nuevo estado y el nuevo posicionamiento de la ventana especificada..
Si este parámetro corresponde a una cadena vacía (""), el cambio de posición (constantes Above, AboveAll, Normal) de una ventana se cancela.
AboveLa ventana se mueve al primer plano en relación con las otras ventanas de la aplicación.
Universal Windows 10 App Esta constante no está disponible.
AboveAllLa ventana se mueve al primer plano en relación con todas las demás ventanas, incluso con las de las otras aplicaciones.. Esta constante se ignora para las ventanas MDI hijas que se muestran desde una ventana MDI padre.

LinuxUniversal Windows 10 AppJava Esta constante no está disponible.
ActiveLa ventana se convierte en Active (ventana en edición).
DisplayOnlyLa ventana se convierte en Inactive (no se permite ninguna entrada en los controles de la ventana).
GrayedLos controles de la ventana son Grayed.
InvisibleLa ventana se convierte en Invisible y Inactive.
NormalUna ventana en el modo AboveAll cambia al modo Normal (las ventanas de otras aplicaciones pueden ser mostradas en primer plano). En los otros casos, esta constante no tiene ningún efecto.
Universal Windows 10 App Esta constante no está disponible.
NotFoundLa ventana se cierra. Si esta ventana no existe, se produce un error de WLanguage.
OutsideScreenLa ventana permanece activa pero está situada fuera del área de la pantalla de Visible.
Universal Windows 10 App Esta constante no está disponible.
TopActiveLa ventana se convierte en Active (ventana en edición) y se muestra en primer plano. Esta constante corresponde al resultado de un clic realizado en la barra de título de la ventana.
Universal Windows 10 App Esta constante no está disponible.
Observaciones

Apertura modal/Apertura no modal

En la apertura modal (ventana padre MDI y ventana hija MDI), no se puede utilizar la función WinStatus:
  • para hacer una ventana de padres Active.
  • para mostrar una ventana hija "encima" con la constante Above o AboveAll desde una ventana padre MDI.
En la apertura modal, si una ventana padre se hace Invisible, la ventana hijo también se hace Invisible.
En la apertura no modal, si una ventana padre con al menos una ventana hijo se hace Invisible, las ventanas hijo no se hacen Invisible.

Las diferencias entre las constantes Invisible y OutsideScreen

  • Si el tipo de ventana padre es:
    • OutsideScreen, esta ventana se muestra en la lista de aplicaciones de Windows (accesible a través de la pestaña Alt).
    • Invisible, esta ventana no se muestra en la lista de aplicaciones de Windows (accesible con las teclas Alt + Tab).
  • Las coordenadas de una ventana de tipo OutsideScreen son negativas.
  • Cambiando de:
    • Invisible a Active desencadena la ejecución de procesos para obtener y perder el foco de manera incoherente.
    • OutsideScreen a Active desencadena la ejecución adecuada de los procesos de ganancia y pérdida de foco.
Consejo: Se recomienda utilizar el estado OutsideScreen en lugar de Invisible.
  • Si una ventana que es de tipo OutsideScreen se vuelve a mostrar con la función WinStatus y la constante Active, la función WinStatus no le da foco a la ventana.
  • Si la ventana de tipo OutsideScreen no tenía foco, tampoco lo tendrá después de utilizar la función WinStatus.

Ventana inactiva o Invisible

Si la ventana actual se vuelve inactiva o Invisible, la "pérdida de foco" Process de la ventana se ejecutará antes del cambio de estado.

Cerrar la ventana

El siguiente código se utiliza para cerrar la ventana:
WinStatus(<Window name>, NotFound)
Este código equivale a Cerrar.
Componente: wd290obj.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Exemplo WinStatus/OpenChild/SetFocus|
Exemplo WinStatus/OpenChild/SetFocus|

IF WinStatus(WIN_tela_exemplo)=NotFound THEN
OpenChild(WIN_tela_exemplo)
ELSE
Restore(WIN_tela_exemplo)
SetFocus(WIN_tela_exemplo)
END

// Blog com Video e exemplo

http://windevdesenvolvimento.blogspot.com.br/2016/11/aula-977-windev-window-janela-6.html

https://www.youtube.com/watch?v=gofWLY8rEAI

De matos
04 12 2016

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local