# Evitar que determinados formularios se cierren de la x de la vista

**URL:** <https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888>\
**Category:** Velneo\
**Created:** [12 Noviembre, 2021 08:49 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888 "2021-11-12T08:49:24Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![sergioinfortic](https://avatars.discourse-cdn.com/v4/letter/s/e8c25b/32.png) [@sergioinfortic](https://foros.velneo.com/u/sergioinfortic)\
**Post date:** [12 Noviembre, 2021 08:49 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/1 "2021-11-12T08:49:24Z")

</div>

Quiero controlar que determinados formularios no se puedan cerrar desde la X

He puesto evento de pre-vista cerrada y recojo la vista con theMainWindow.currentView();

Pero resulta que con esto tengo la vista activa, no la que estoy intentado cerrar.

¿ Hay forma de saber en qué vista han pulsado la x ?

---

<div class="post-metadata">

**Author:** ![maserrano](https://avatars.discourse-cdn.com/v4/letter/m/838e76/32.png) [@maserrano](https://foros.velneo.com/u/maserrano)\
**Post date:** [12 Noviembre, 2021 11:04 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/2 "2021-11-12T11:04:44Z")

</div>

Prueba con  
theMainWindow.currentView().centralWidget().objectInfo().id()  
Te devuelve el id del formulario que tengas activo.

Y si en el manejador le pones SET RETORNO PROCESO = NO pues no lo cierra.

---

<div class="post-metadata">

**Author:** ![sergioinfortic](https://avatars.discourse-cdn.com/v4/letter/s/e8c25b/32.png) [@sergioinfortic](https://foros.velneo.com/u/sergioinfortic)\
**Post date:** [12 Noviembre, 2021 11:23 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/3 "2021-11-12T11:23:08Z")

</div>

Si, pero el problema es que te coge el formulario ACTIVO.

No me he explicado bien.

Si estás en un formulario pero le das a la x de otra ficha, no sabes en la ficha que han pulsado, ese código te devolverá el formulario activo y no el que han cerrado.

---

<div class="post-metadata">

**Author:** ![pacosatu](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/pacosatu/32/5131_2.png) [@pacosatu](https://foros.velneo.com/u/pacosatu)\
**Post date:** [12 Noviembre, 2021 11:31 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/4 "2021-11-12T11:31:19Z")

</div>

Hola Sergio.

Primero, revisa ese código que tienes porque sí que debes poder acceder a la Vista que estás cerrando con **theMainWindow.currentView()**. De hecho ese es el funcionamiento requerido.

> Sin embargo no todo es tan bonito, la Vista que estás cerrando debe estar activa, no sirve pulsar la X de otra Vista distinta que no está activa porque en ese caso theMainWindow.currentView() no devuelve la Vista sobre la que pulsas la X.

Saludos  
Paco Satué

---

<div class="post-metadata">

**Author:** ![pacosatu](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/pacosatu/32/5131_2.png) [@pacosatu](https://foros.velneo.com/u/pacosatu)\
**Post date:** [12 Noviembre, 2021 11:33 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/5 "2021-11-12T11:33:21Z")

</div>

Hola Sergio.

Ya veo que efectívamente estás intentando cerrar otra pestaña diferente a la que está activa.  
En ese caso, creo que “tenemos un problema Houston”.

Saludos  
Paco Satué

---

<div class="post-metadata">

**Author:** ![sergioinfortic](https://avatars.discourse-cdn.com/v4/letter/s/e8c25b/32.png) [@sergioinfortic](https://foros.velneo.com/u/sergioinfortic)\
**Post date:** [12 Noviembre, 2021 12:14 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/6 "2021-11-12T12:14:55Z")

</div>

Si, el tema es ese, la activa no tiene gracia, el tema es putear un poquito.

La verdad, no se me ocurre como.

---

<div class="post-metadata">

**Author:** ![pacosatu](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/pacosatu/32/5131_2.png) [@pacosatu](https://foros.velneo.com/u/pacosatu)\
**Post date:** [12 Noviembre, 2021 12:46 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/7 "2021-11-12T12:46:16Z")

</div>

Hola Sergio.

No le des más vueltas, lo más coherente es que haya de una vez un evento ON\_CLOSE del formulario, ya sea en modo Vista o en modo Diálogo.

Ya está la Idea llamando a la puerta de Velneo desde hace casi 8 años.  
[https://soporte.velneo.es/hc/es/community/posts/222979227-Evento-OnClose-en-formularios](https://soporte.velneo.es/hc/es/community/posts/222979227-Evento-OnClose-en-formularios)

Saludos  
Paco Satué

---

<div class="post-metadata">

**Author:** ![sergioinfortic](https://avatars.discourse-cdn.com/v4/letter/s/e8c25b/32.png) [@sergioinfortic](https://foros.velneo.com/u/sergioinfortic)\
**Post date:** [12 Noviembre, 2021 14:02 UTC](https://foros.velneo.com/t/evitar-que-determinados-formularios-se-cierren-de-la-x-de-la-vista/10888/8 "2021-11-12T14:02:57Z")

</div>

De hecho esa idea la puso mi compañero.

Es incomprensible que no exista ese evento.
