Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 17-09-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola carlosCalle, bienvenido a los foros de Club Delphi

Como es costumbre, te invitamos a leer nuestra guía de estilo

Según entiendo los requisitos que solicitas son:
  1. El Edit debe tener el foco en todo momento
  2. Cuando el Edit recibe datos estos deben añadirse a la tabla y el cursor quedar posicionado allí.
  3. Los usuarios deberán poder desplazarse por los registros con las teclas arriba/abajo.
Ejemplo de un modo en que podrías hacerlo:
Código Delphi [-]
...
interface

procedure TForm1.FormCreate(Sender: TObject);
begin
  el_Edit.TabOrder := 0;
  //  si hay otros controles, evitar el cambio de foco con Tab 
  // Ctrl1.TabStop := False;
  // Ctrl2...
  DBGrid1.Enabled := False; 
end;

// no saldrán del edit con el mouse
procedure TForm1.FormActivate(Sender: TObject);
var
  R : TRect;
begin
  R := el_Edit.BoundsRect;
  MapWindowPoints(Handle, 0, R, 2);
  ClipCursor(@R);
end;

// controlar la teclas presionadas
procedure TForm1.el_EditKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  case Key of
    VK_DOWN   : DataSet.Next;
    VK_UP     : DataSet.Prior;
    VK_RETURN : begin  // se reciben datos
                  DataSet.Append;
                  DataSet.FieldByName('Campo-para-el_Edit').Value := el_Edit.Text; //(o la conversión correspondiente)
                //DataSet.FieldByName...
                //...    
                  DataSet.Post;
                end;
     VK_ESCAPE : Close; // Salir
  end;
end;

// restaurar área del mouse
procedure TForm1.FormDestroy(Sender: TObject);
begin
  ClipCursor(nil);
end;
La situación no me quedó del todo clara, por lo que no voy a sugerirte algún método alternativo para la acción.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 



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
DBGRID ¿como seleccionar fila y obtener datos de la fila ? JXJ Varios 5 18-04-2017 02:50:14
Situar el foco de un dbgrid a una fila determinada Vales08 Varios 9 02-12-2011 23:17:00
tomar una fila de un DBGrid y traspasarlo a otro DBGrid micky mouse Varios 2 05-06-2008 16:24:18
TEdit con foco pero sin cursor Zubat OOP 1 13-06-2007 16:58:04
TEdit selecciona todo al recibir el foco pero se pierde con el click Sirkius Varios 4 29-08-2005 11:02:33


La franja horaria es GMT +2. Ahora son las 16:27:19.


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