Ventana informativa

Xojo Mac Escritorio Versión 2022 Release 1.1

Hola,
En versiones antiguas (Real Studio) podía dejar una ventana informativa en primer plano mientras la ventana principal continuaba con el código. Básicamente:

Código ventana principal
VentanaInfo.ShowModal
Código ventana principal
VentanaInfo.Close
Código ventana principal

Esto permitía mantener una ventana estática en primer plano, con un texto de información sin más aspiraciones (barras de progreso, actualización del texto, etc.) mientras se ejecutaba un código especialmente largo en la ventana principal.
Ahora no funciona.

¿Alguna idea para poder hacerlo?

Saludos
Rafael

Hola @Rafael_Rivera_Durán

Puedes hacerlo de la siguiente forma (por ejemplo partiendo de un nuevo proyecto Desktop):

  1. Añade una segunda ventana al proyecto.
  2. Sobre la nueva ventana, utiliza el Panel Inspector y asigna Type a Floating Window.
  3. Cambia su Name a “Info”.
  4. Haz clic en el icono de la rueda dentada sobre el mismo Panel Inspector y desactiva la opción Implicit Instance.
  5. Ahora, en la ventana principal “Window1”, añade por ejemplo un botón.
  6. Añade sobre dicho botón el evento Pressed con el siguiente código:
Var w As New info
w.Show

¡Listo! Cuando ejecutes el proyecto y hagas clic en el botón, se creará una nueva instancia de la ventana flotante Info.

Hola,
Gracias por responder

Efectivamente, la ventana Info aparece. Pero después de realizar la tarea la ventana principal, la ventana info debe desaparecer, así que añado una tarea y una orden de cerrar la ventana info.

Var w As New info
w.Show
For i As Integer = 1 To 1000000
Next
w.Close

Y la ventana Info ya no aparece
¿Puedo hacer algo más?

En la misma sección de código no se puede usar un .Show y un .Close para una ventana extra. La ejecución bloquea las actualizaciones del UI.

No lo he hecho pero un Timer que haga el .Show/.Close de la ventana debe funcionar.

Alguno de los ejemplos que vienen con Xojo ya sea de Timer o Thread te pueda ayudar.

Hola
Gracias por contestar

Tendré que mirar Timer o Thread si no encuentro la solución sencilla que empleaba en las versiones antiguas y que indicaba al principio.

Las versiones de Xojo antiguas también usaban versiones antiguas de macOS.

Recuerdo que un cambio entre Sierra y High Sierra, con el mismo código y versión de Xojo, se comportaba de forma diferente en cuanto a actualizar la información del programa en pantalla. Por suerte un pequeño ajuste (para este caso particular) pude hacer y así ya se comportó de la misma forma en Sierra que High Sierra.

Si no encuentras los ejemplos o necesitas mas ayuda, puedes seguir poniendo tus intentos y dudas aquí.

Saludos

Apple, en especial, ‘empuja’ a los desarrolladores a tener actualizados sus programas.

Hola,
Finalmente lo he resuelto con un Timer.
No es una forma elegante ni intuitiva pero… funciona

Saludos
Rafael