buenas noches
tengo un edit que valida ciertos datos cuando se presiona ENTER
entonces en el procedimiento OnkeyDown hago una serie de validaciones
Código Delphi
[-]procedure TfrmValesdeConsumo.edtTrabajadorKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
Var _Trabajador :String;
begin
_pasar := '1';
if (Key = 13) or (key = VK_TAB) then
Begin
_Trabajador := edtTrabajador.Text;
if not VerificarTrabajador (_Trabajador) then
begin
frmCatalogoTrabajador := TfrmCatalogoTrabajador.Create(nil);
frmCatalogoTrabajador.FormStyle := fsNormal;
frmCatalogoTrabajador.Position := poMainFormCenter;
frmCatalogoTrabajador.Visible := False;
frmCatalogoTrabajador.t_para := True;
frmCatalogoTrabajador.ShowModal;
frmCatalogoTrabajador.Free;
end;
edtTrabajador.Text := dmComedor.vResultTrabajador;
_TipoTrabajador := dmComedor.vResultTrabajadorTipo;
lblTrabajador.Caption := Trim(dmComedor.vResultTrabajadorDescripcion);
if dmComedor.g_ESTADOTrabajador = 'A' Then
Begin
edtTrabajador.Text := '';
MessageDlg('Cliente Anulado', mtError, [mbAbort], 0);
end;
if dmComedor.g_StatusTrabajador = 'X' Then
Begin
edtTrabajador.Text := '';
MessageDlg('Cliente no puede consumir', mtError, [mbAbort], 0);
end;
if edtTrabajador.Text = '' then
edtTrabajador.SetFocus;
tblTrabajador.Locate('KOD', dmComedor.vResultTrabajador, []);
_NORetail := False;
_SubvTotal := False;
_SoloComedor := False;
_SubvTotal := iif (dmComedor.vResultTrabajadorSubvencion = '1', True, False);
if tblTrabajadorFechaCese.Value <> 0 Then
_SoloComedor := iif (tblTrabajadorFechaCese.Value <= Trunc(dmComedor.g_FECHA), True, False);
_NORetail := iif (tblTrabajadorFT.AsString = 'x', True, False);
if _SoloComedor Then Begin
edtTrabajador.Text := '';
MessageDlg('No puede consumir', mtError, [mbAbort], 0);
End;
end;
end;
la pregunta es....
como puedo ejecutar este procedimiento sin necesidad de presionar enter
por ejemplo
cuando quiero presionar un click en un botton seria algo asi
con el OnkeyDown como seria?
se entiende?