Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como puedo evitar que cierren una ventana usando ALT-F4 (https://www.clubdelphi.com/foros/showthread.php?t=49757)

flystar 29-10-2007 19:10:52

Como puedo evitar que cierren una ventana usando ALT-F4
 
Buenos Días:

Quiero evitar que un usuario pueda cerrar una ventana emergente de mi sistema por que si lo hace puede quedar un proceso a la mitad y eso me puede traer consecuencias inesperadas. Yo se que debo validar para cualquier situación como que se apague el PC etc, pero de todos modos me facilitaria mucho saber como evitar que la cierren con la combinacion de teclas ALT-F4.

Gracias.

poliburro 29-10-2007 19:18:29

en el evento OnCloseQuery de la forma, pones


Canclose := False;

Es todo

D-MO 29-10-2007 19:19:01

Con el evento OnCloseQuery del form principal.

Saludos.

Ups... se me adelantaron :P

flystar 29-10-2007 19:25:31

y luego para que la puedan cerrar con un boton???
 
La bronca de hacer eso es que luego ya no hallo como hacer para que si se pueda cerrar con un boton o una funcion para ello..jaja

Delphius 29-10-2007 19:36:25

Hola flystar,
Lo que te ofrecieron es sólo un ejemplo. Lo que debes hacer es intuitivo:

Código Delphi [-]
CanClose := Condición_para_el cierre

Por ejemplo:

Código Delphi [-]
CanClose := ((Edad <= 18) OR (Edad => 30)) OR (EstadoCivil = 'Casada')

Este último ejemplo es el que usaría para descartar féminas no disponibles:D

Saludos,

flystar 29-10-2007 19:39:50

Ya entendi
 
Ya entiendo el asunto, Gracias a todos por sus respuestas navideñas..
ya se acerca navidad y todo lo veo navideño. jajaja

D-MO 29-10-2007 19:47:24

Me vas a perdonar Delphius, pero he encontrado un bug en tu código, pero mejor pongámoslo a prueba para que veas.

EdadFemina = 35
EstadoCivilFemina = Soltera

[EdadFemina => 30] = true
[EstadoCivilFemina ='Casada'] = false

true & false = false :eek:

Solución:

Código:

CanClose := ((Edad <= 18) OR (Edad => 30)) OR (EstadoCivil = 'Casada')
Resultado:
[EdadFemina => 30] = true
[EstadoCivilFemina ='Casada'] = false

true || false = true :D.

Saludos

flystar 29-10-2007 19:52:20

Buen punto
 
Buen punto esos pequeños detalles, nos pueden dar dolores de cabeza feos por que pensamos que el error se encuentra en una zona mas complicada del código cuando en realidad se trataba de un pequeño descuido que dejamos pasar por alto en nuestras narices.

jeje Saludos navideños


La franja horaria es GMT +2. Ahora son las 08:21:54.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi