Vamos a recapitular.
Para empezar, cuando vtdleon dijo al principio:
Cita:
|
Empezado por vtdleon
Al momento de dar click en el boton cancelar, este toma el foco y despues ejecuta tu codigo, por lo tanto nunca entrara en el Else.
|
él tenía toda la razón, yo estaba equivocado, lo cual se puede verificar simplemente poniendo:
Código Delphi
[-]
procedure TForm1.Edit1Exit(Sender: TObject);
begin
Assert(Button1.Focused);
end;
La aserción será cierta si se oprime el botón y falsa en cualquier otro caso.
Yo le propongo a
ingel que exponga desde el comienzo lo que quiere hacer porque semánticamente es raro lo que originalmente puso:
Código Delphi
[-]
if not bcancelar.focused then ejecutarcodigo
else bCancelarClick(self);
Esto está diciendo: "Si
no se oprimió el botón Cancelar ejecútese algo, de lo contrario oprímase Cancelar" pero lo contrario es que sí se oprimió así que ¿para qué volver a hacerlo?
// Saludos