Buenas tardes,
En mi programa, desde un diálogo padre (no modal), se llama un diálogo (hijo ) no modal cuantas veces el operador lo necesite para ver , cada vez que lo llama, distintos Richedits.
Funciona todo de primera pero, (siempre hay un pero), necesitaría tener la opción de poder cerrar todos los diálogos hijo abiertos cuando se cierra el diálogo padre.
Como son todos NO MODAL, no se cierran automáticamente.
¿Hay forma de hacerlo?
Gracias.
Rolando
cerrar todos los dialogos abiertos
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Aqui tienes un ejemplo genérico que cerraría todos los diálogos no modales:
Code: Select all
#include "FiveWin.ch"
function Main()
local oWnd
DEFINE WINDOW oWnd
ACTIVATE WINDOW oWnd ;
ON INIT CreateNonModal() ;
ON CLICK AEval( GetAllWin(),;
{ | o | If( o:ClassName() == "TDIALOG" .and. ! o:lModal, o:End(),) } )
return nil
function CreateNonModal()
local oDlg
DEFINE DIALOG oDlg
ACTIVATE DIALOG oDlg NOWAIT
return nil
Antonio,
Gracias por responder.
La cuestión es que solo tengo una ventana en todo el programa, desde los menúes de esa ventana, llamo a los distintos diálogos padre.
Lo que hice fue incluirle la línea que enviaras:
AEval( GetAllWin() , { | o | If( o:ClassName() == "TDIALOG" .and. ! o:lModal, o:End(),) } )
En el valid del diálogo padre y cierra todos los diálogos abiertos pero también cierra la única ventana que es donde están los menúes, es decir, cierra el programa completamente.
Gracias.
Rolando
Gracias por responder.
La cuestión es que solo tengo una ventana en todo el programa, desde los menúes de esa ventana, llamo a los distintos diálogos padre.
Lo que hice fue incluirle la línea que enviaras:
AEval( GetAllWin() , { | o | If( o:ClassName() == "TDIALOG" .and. ! o:lModal, o:End(),) } )
En el valid del diálogo padre y cierra todos los diálogos abiertos pero también cierra la única ventana que es donde están los menúes, es decir, cierra el programa completamente.
Gracias.
Rolando
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Si Antonio, todos tienen un Richedit y el título es variable dependiendo del registro en el que esté posicionado la DBF.
¿Se puede cerrar un diálogo por el título?. si fuera posible, podría crear un array con los títulos de los díalogos abiertos y, al cerrar el diálogo padre, en base al array cerraría los diálogos.
Es todo hipotético, ya que no se si se podría hacer.
Gracias.
Rolando
¿Se puede cerrar un diálogo por el título?. si fuera posible, podría crear un array con los títulos de los díalogos abiertos y, al cerrar el diálogo padre, en base al array cerraría los diálogos.
Es todo hipotético, ya que no se si se podría hacer.
Gracias.
Rolando