Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-11-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Otra idea:

El formulario tiene una propiedad ActiveControl, cuyo valor es el control activo en cada momento. En el evento OnExit de un control, ActiveControl contiene ya el control al que se va a desplazar el foco mientras que (Sender as TWinControl) contiene el control que se está abandonando. Entonces, podemos comparar la propiedad TabOrder de ambos controles para saber si estamos avanzando o retrocediendo:

Código Delphi [-]
{
  Asignamos este evento a todos los Edit.
}
procedure TForm1.EditExit(Sender: TObject);
begin
  if ((Sender as TEdit).Text = '') and ((Sender as TWinControl).TabOrder < ActiveControl.TabOrder) then
  begin
    ShowMessage('Falta capturar el dato');
    (Sender as TWinControl).SetFocus;
  end;
end;

// Saludos
Responder Con Cita
  #2  
Antiguo 09-11-2010
dao_ar dao_ar is offline
Miembro
 
Registrado: ene 2005
Ubicación: Neuquen - Argentina
Posts: 24
Poder: 0
dao_ar Va por buen camino
Contorles

Gracias por las ideas, con ellas pude resolver el problema decentemente !!!
Responder Con Cita
  #3  
Antiguo 09-11-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
dao_ar:

Siempre es bueno que aclares cuál fue tu solución final para que otros con dudas similares puedan aprovecharla.

// Saludos
Responder Con Cita
  #4  
Antiguo 17-11-2010
dao_ar dao_ar is offline
Miembro
 
Registrado: ene 2005
Ubicación: Neuquen - Argentina
Posts: 24
Poder: 0
dao_ar Va por buen camino
Controles

Ok.

Lo solucione con preguntando a donde va el foco (Noshy).

if (not canterior1.Focused) or (not canterior2.Focused) then ...

Tambien anduvo la idea de Roman
if ((Sender as TEdit).Text = '') and ((Sender as TWinControl).TabOrder < ActiveControl.TabOrder) then
..
pero la otra es mas simple. Y como no dejo muchas alternativas donde ir, solo para los anteriores o Cancelar
se puede controlar con la alternativa de Noshy.

Gracias a todos.
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
nombrar controles Johnny Q Varios 6 30-06-2005 00:38:26
Controles ActiveX senpiterno Varios 12 27-09-2004 20:14:47
Alineación de controles roman OOP 9 24-08-2004 00:00:57
controles bd o no? walrus Conexión con bases de datos 1 04-08-2004 18:01:33
Parpadeo de controles roman Varios 11 03-04-2004 07:56:59


La franja horaria es GMT +2. Ahora son las 20:10:21.


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