Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Formulario que se situa en la barra de tareas (https://www.clubdelphi.com/foros/showthread.php?t=50793)

lgarcia 28-11-2007 14:07:13

Formulario que se situa en la barra de tareas
 
Hola listeros:

Tengo el siguiente problema y es relacionado a un formulario que cuando despues de ejecutar la llamada a un QuickReport y con el uso de un MessageDlg cuando se le da la opcion de aceptar me minimiza el formulario hacia la barra de tareas. Por lo que el usuario piensa que el sistema se cerro. Sera alguna opcion del Formulario o algo relacionado con el MessageDlg.

Muchas gracias por su colaboracion.

Saludos

Luis Garcia

Chris 28-11-2007 15:15:59

El form es de tipo MDIChild? Si este es el caso, fijate que lel botón "aceptar" tenga asignada la propiedad ModalResul a mrNone.

Aveces utilizamos TBtnButton y asignamos la propiedad Style, sin darlos cuenta que cuando modificamos dicha propiedad también nos hace cambios en otras, como por ejemplo la propiedad gliph o modalresult.

Saludos.

lgarcia 28-11-2007 15:51:49

Formulario
 
Gracias D&W por la respuesta pero es un formulario normal, incluso yo tengo una version anterior del sistema y esa trabaja bien, realmente no se que esta pasando y llevos varios dias en eso. Incluso cambie el boton por uno TButton y nada.

Saludos

Luis Garcia

Chris 28-11-2007 19:52:52

Podrías poner una parte del código? es dificil resolver un problema a ciegas.

Puedes usar breakpoints para determinar en que punto de ejecución es en donde se minimiza la ventana.

lgarcia 28-11-2007 20:53:24

Formulario
 
Aqui va una parte del codigo
Código:

procedure TFormRemesasCadeca.ButtonTraspasoClick(Sender: TObject);
var
  texto: String;
  IdTransito: integer;
  total: Currency;
begin
  if LabelTotal.Caption = '0.00' then
  begin
    ShowMessage('Debe al menos tener alguna denominación' + chr(13) +  'para poder realizar Usted la remesa a Cadeca');
    edBolsom.SetFocus;
  end
  else
  begin
    total:= StrToCurr(LabelTotal.Caption);
    cifra:= numLetra(total, 1, 2);
    with QuickReportRemesasCadeca do
    begin
      LabelCasilla.Caption:= nomcadeca;
      Labelmoneda.Caption:= nombremoneda;
      LabelCasillaa.Caption:= nomcadeca;
      Labelmonedaa.Caption:= nombremoneda;
      LabelCasillab.Caption:= nomcadeca;
      Labelmonedab.Caption:= nombremoneda;
      Preview;
    end;
    texto:= ' Esta operación que va a realizar es irreversible' + chr(13) +
            '¿Esta seguro que desea hacer una Remesa a Cadeca?';
    if MessageDlg(texto, mtConfirmation, [mbYes, mbNo], 0) = mrYes then
    begin
      with Guardar do
      begin
        Close;
        Parameters.ParamByName('@numero_').Value:= EditBolso.Text;
        Parameters.ParamByName('@cartaporte_').Value:= EditCartaporte.Text;
        Parameters.ParamByName('@usuario_').Value:= IdUsuario;
        Parameters.ParamByName('@importe_').Value:= LabelTotal.Caption;
        if moneda = 1 then Parameters.ParamByName('@tipo_').Value:= 1
        else Parameters.ParamByName('@tipo_').Value:= 2;
        Parameters.ParamByName('@clasificacion_').Value:= 9;
        Parameters.ParamByName('@sobres_').Value:= 0;
        Parameters.ParamByName('@fecha_').Value:= Int(Date);
        Parameters.ParamByName('@cajero_').Value:= IdPersonal;
        Parameters.ParamByName('@status_').Value:= 0;
        Parameters.ParamByName('@tipo_remesa_').Value:= moneda;
        Parameters.ParamByName('@bolsos_').Value:= StrToInt(EditBolsos.Text);
        Parameters.ParamByName('@valijas_').Value:= StrToInt(EditValijas.Text);
        Parameters.ParamByName('@idtransito_').Value;
        Prepared:= True;
        ExecProc;
        IdTransito:= Parameters.ParamByName('@idtransito_').Value;
      end;
      with Remesa do
      begin
        Close;
        Parameters.ParamByName('@reserva_').Value:= IdPersonal;
        Parameters.ParamByName('@moneda_').Value:= moneda;
        Parameters.ParamByName('@cb1_').Value:= -StrToInt(Edit1.Text);
        Parameters.ParamByName('@cb2_').Value:= -StrToInt(Edit2.Text);
        Parameters.ParamByName('@cb3_').Value:= -StrToInt(Edit3.Text);
        Parameters.ParamByName('@cb5_').Value:= -StrToInt(Edit5.Text);
        Parameters.ParamByName('@cb10_').Value:= -StrToInt(Edit10.Text);
        Parameters.ParamByName('@cb20_').Value:= -StrToInt(Edit20.Text);
        Parameters.ParamByName('@cb50_').Value:= -StrToInt(Edit50.Text);
        Parameters.ParamByName('@cb100_').Value:= -StrToInt(Edit100.Text);
        Parameters.ParamByName('@cf1_').Value:= -StrToInt(Edit1c.Text);
        Parameters.ParamByName('@cf2_').Value:= -StrToInt(Edit2c.Text);
        Parameters.ParamByName('@cf5_').Value:= -StrToInt(Edit5c.Text);
        Parameters.ParamByName('@cf10_').Value:= -StrToInt(Edit10c.Text);
        Parameters.ParamByName('@cf20_').Value:= -StrToInt(Edit20c.Text);
        Parameters.ParamByName('@cf25_').Value:= -StrToInt(Edit25c.Text);
        Parameters.ParamByName('@cf50_').Value:= -StrToInt(Edit50c.Text);
        Parameters.ParamByName('@cf1p_').Value:= -StrToInt(Edit1p.Text);
        Parameters.ParamByName('@cf3p_').Value:= -StrToInt(Edit3p.Text);
        Parameters.ParamByName('@cb1cuc_').Value:= -StrToInt(Edit1cuc.Text);
        Parameters.ParamByName('@cb3cuc_').Value:= -StrToInt(Edit3cuc.Text);
        Parameters.ParamByName('@cb5cuc_').Value:= -StrToInt(Edit5cuc.Text);
        Parameters.ParamByName('@cb10cuc_').Value:= -StrToInt(Edit10cuc.Text);
        Parameters.ParamByName('@cb20cuc_').Value:= -StrToInt(Edit20cuc.Text);
        Parameters.ParamByName('@cb50cuc_').Value:= -StrToInt(Edit50cuc.Text);
        Parameters.ParamByName('@cb100cuc_').Value:= -StrToInt(Edit100cuc.Text);
        Parameters.ParamByName('@status_').Value:= 0;
        Parameters.ParamByName('@fecha_').Value:= Int(Date);
        Parameters.ParamByName('@tipo_').Value:= 3;
        Parameters.ParamByName('@usuario_').Value:= IdUsuario;
        Parameters.ParamByName('@idtransito_').Value:= IdTransito;
        Parameters.ParamByName('@numero_').Value:= EditNumero.Text;
        Parameters.ParamByName('@bolso_').Value:= EditBolsos.Text;
        Parameters.ParamByName('@valija_').Value:= EditValijas.Text;
        Parameters.ParamByName('@bolsom_').Value:= StrToInt(edBolsom.Text);
        if chbOperacion.Checked then Parameters.ParamByName('@operacion_').Value:= 1
        else Parameters.ParamByName('@operacion_').Value:= 0;
        Prepared:= True;
        ExecProc;
      end;
    end;
  end
end;

y gracias por la atencion.

Saludos

Luis Garcia

lgarcia 28-11-2007 21:46:06

Formulario
 
El problema era debido a que estaba utilizando la actualizacion de los datos en el evento OnActivate y debia hacerlo en el ONShow y en el boton de la operacion.Gracias D&W por tus respuestas.SaludosLuis Garcia


La franja horaria es GMT +2. Ahora son las 20:08:35.

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