Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Evitar Borrar más filas con DBGRID (https://www.clubdelphi.com/foros/showthread.php?t=29076)

User_Baja_2 11-01-2006 22:23:43

Evitar Borrar más filas con DBGRID
 
Estoy usando los componentes de infopower TwwdbGrid, este componente lo tengo enganchado a una tabla pudiendo visualizar sus datos en la rejilla de datos.. si pulso ALT+SUPR se borra una linea (correspondiente a un registro de la tabla), hasta aqui todo bien, en las opciones de dicho componente he visto opciones de ocultar la pregunta "desea borrar, si o no?" incluso evitar que se borre ningún registro, pero yo lo que quiero saber es como saber que el componente ya está vacio, ya se han borrado todas las filas y evitar que en ese caso pulse alt+supr Para así evitar dicho error..

He intentado capturar las teclas en el evento del twwdbgrid keypress,.. etc Shif[ssALT] and VK_Delete etc. etc. pero nada, aunque intercepte el momento de borrar.. como evito que borre en ese momento...

espero haberme explicado con claridad..

Muchas gracias

vtdeleon 11-01-2006 23:47:08

Saludos

Para saber si la tabla esta vacio, utiliza: table1.IsEmpty (resultado booleano)

User_Baja_2 12-01-2006 21:38:13

Si, yo puedo averiguar cuando ha pulsado alt+Supr y comprobar que la tabla esta vacia.. pero cuando sepa q si lo está.. como detengo la acción de borrar? esa es realmente mi pregunta.. kizá no me explike bien..

Muchas gracias

maeyanes 12-01-2006 21:54:58

Puedes lanzar la excepción silenciosa Abort.

Código Delphi [-]
if Table.IsEmpty then
  Abort;



Saludos...

User_Baja_2 12-01-2006 23:59:09

Bueno la opción de abortar no me ha resultado muy válida pero he encontrado una solución,

He ido al dbgrid y en options he kitado la propiedad de confirmación de borrado y luego en keyoptions la opcion de permitir borrar registros en el grid.. y en el evento keydown capturar las teclas ctrl+supr y si las pulsa y hay registros que borre y sino pues nada..

A pesar de ello muchas gracias por la idea

Nuppy


La franja horaria es GMT +2. Ahora son las 20:06:00.

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