Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-04-2006
Avatar de halcon_rojo
halcon_rojo halcon_rojo is offline
Miembro
 
Registrado: abr 2006
Posts: 14
Poder: 0
halcon_rojo Va por buen camino
Exclamation Error en evento OnExit en TDBEdit

HOla a todos espero alguien pueda ayudarme con un problema que me vuelve loco. Tengo un form con varios TDBEdits, en el evento OnExit de un TDBEdit del formulario esta el sigte codigo:
Código Delphi [-]
procedure TMainForm.txtNitExit(Sender: TObject);
begin
    if not (dm.datos.compras.State = dsEdit) then
        chkIfExistC;
    //if not verificaDATO(txtNitv.Text) then
    //   ShowMessage('Dato Inválido.');
end;
que no funciona si habilito el código que se encuentra comentado, que es la llamada a la funcion verificaDATO() que ve el dato ingresado por el usuario y devuelve true o false, cuando devuelve true, el codigo funciona bien, pero si devuelve false, y se muestra el dialogo 'Dato Inválido' los TDBEdits el formulario se bloquean, es decir, no puedo digitar ninguna entrada y solo la tecla TAB parece funcionar.
Por si acaso debo mencionar que estos TDBEdit tienen el sigte codigo en el evento OnKeyPress:
Código Delphi [-]
procedure TMainForm.txtNroKeyPress(Sender: TObject; var Key: Char);
begin
    if(Key = #13) then
    begin
      Key := #0;
      Perform(WM_NEXTDLGCTL,0,0);
    end
    else
        Key := Tecla.Numeros(Key);
end;
que me valida que el usuario solo ingrese numeros en el campo.
Parece que este problema solo pasa cuando hago una advertencia con un Showmessage o un MessageDlg. Alguien podria ayudarme?
Responder Con Cita
  #2  
Antiguo 28-04-2006
Avatar de halcon_rojo
halcon_rojo halcon_rojo is offline
Miembro
 
Registrado: abr 2006
Posts: 14
Poder: 0
halcon_rojo Va por buen camino
usar setfocus?

hola yo de nuevo, no pude dar con la causa del problema pero una solucion fue aumentarle:
Código Delphi [-]
    if not verificaDATO(txtNitv.Text) then
    begin
       ShowMessage('Dato Inválido. ');
       MainForm.txtNitv.SetFocus;
    end;

pero como mi intencion no es la de obigar al usuario a poner un dato valido igual no soluciona mi problema, se me ocurrio pasarle el foco al siguiente TDBEdit y si funciona solo que esta ves el cursor desaparece!. What can I do?
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Problemas con evento OnExit santi33a Varios 4 15-04-2006 14:30:50
Evento OnExit de un Edit Caro OOP 1 03-02-2006 18:57:01
duda con el uso de los TDBEdit ercrizeporta Conexión con bases de datos 15 09-07-2005 18:54:30
OnExit DarioArg Varios 2 12-03-2005 03:34:55
TDBEdit Un abrazo OOP 4 20-05-2003 16:26:10


La franja horaria es GMT +2. Ahora son las 14:24:51.


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