Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-07-2006
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Question Como Evitar Borrar Registro en dbGrid al Presionar ESCAPE ????

D6, Firebird 1.53, IBX 6.08
Buen día compañeros, he investigado por la internet y no he encontrado la solución a mi problema, inclusive ya se darán cuenta los moderadores de que este hilo ya lo había puesto sin éxito alguno, 1000 disculpas si se enojan, pero a lo mejor alguien podrá tener la solución a mi problema.

Tengo mi aplicación de Facturación donde cuento con un dbGrid normal, alli se capturan los artículos al facturar, el usuario esta impuesto desde el otro sistema en ms.dos presionar el ESCAPE para regresarse al campo anterior, pero en el dbGrid me borrar el registro ACTUAL, como puedo EVITAR eso ????

Agradezco cualquier sugerencia al respecto....
Responder Con Cita
  #2  
Antiguo 06-07-2006
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Puedes utilizar el evento OnKeyDown de la rejilla y procesar como te convenga dicha pulsación de tecla:
Código Delphi [-]
procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if key = Vk_Escape then
 ShowMessage('Pulsó escape.');
end;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 06-07-2006
nemesio nemesio is offline
Miembro
 
Registrado: nov 2005
Ubicación: Isla de Margarita, Venezuela
Posts: 377
Poder: 19
nemesio Va por buen camino
Agregando un poco a lo que escribió Marcos, en ese evento OnKeyDown o OnKeyUp, puedes hacer un post para que los datos que escribiste en el registro se queden guardados.
Responder Con Cita
  #4  
Antiguo 07-07-2006
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
ok

Gracias nemesio, pero me voy màs a lo que me comento marcos, pero no me funciona, en ocasiones me borra el registro, no siempre lo hace el dbGrid, olvide comentarles eso, que no siempre borra el registro, en lo general por lo que me ha tocado ver, son en los Registros Nuevos, lo que hice fue lo siguiente pero no me funciona:
Código Delphi [-]
procedure onkeydown....
begin
  if key = 27 then begin
    if grid.selectedindex = 1 then
      grid.selectedindex = 0
   else
    if grid.selectedindex = 2 then
      grid.selectedindex = 1;
    //Evitar que borre el registro Actual
    key:=0;
  end;
end;
Si me voy al post que en mi caso uso el ApplyUpdates, me activarà los triggers de actualizar saldos de artìculos y saldos de clientes y empezarà a bloquear el mismo programa en las demàs PC's....
Gracias por sus respuestas....

Última edición por AGAG4 fecha: 07-07-2006 a las 00:56:44.
Responder Con Cita
  #5  
Antiguo 07-07-2006
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Smile

¡Hola a todos!

Qué tal Alfredo. Antes que nada aprovecho la ocasión para recomendar de manera enfática la biblioteca de componentes Developer Express, la cual posee un súper componente rejilla —TcxGrid— que al utilizarlo te despierta la expresión: ¡Pabernosmatao! (así de bueno es ).

Pero suponiendo que en esta etapa del proyecto no estás en condiciones de cambiar el componente rejilla, te sugiero utilizar el evento OnKeyDown de la forma (no de la rejilla) para tener más control sobre el comportamiento de la tecla Esc. Para ello deberás establecer un valor de True en la propiedad KeyPreview de la forma.

Espero te sean de utilidad mis consejos.

Un abrazo expreso.

Al González.

P.D. Cuando veo componentes como los de Developer Express y los de otros miles de útiles bibliotecas, me pregunto si los lenguajes más populares que Delphi tienen algo que siquiera les haga un poco de sombra. Me cuestiono si realmente vale la pena Webisar todas las aplicaciones. ¿Qué tan lejos se puede llegar con interfaces de usuario en PHP, Java o Visual Basic? ¿Tendrá ya C# algo parecido a TcxGrid? ¿Está Delphi en decadencia?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Es Normal Al Presionar ESC en DBDRID se Borre Registro en Uso???? AGAG4 Varios 3 06-04-2006 19:33:34
Evitar Borrar más filas con DBGRID User_Baja_2 Varios 4 12-01-2006 23:59:09
Borrar lineas detalle al borrar registro maestro akinom38 Conexión con bases de datos 3 11-01-2006 10:38:07
borrar los campos de un DBGrid sin borrar los titulos de las columnas Torreblanca OOP 2 02-08-2005 00:12:52
como bloquear un registro en un dbgrid marcelofabiani Conexión con bases de datos 5 02-10-2003 21:04:01


La franja horaria es GMT +2. Ahora son las 05:41: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
Copyright 1996-2007 Club Delphi