Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Problema con opendialog (https://www.clubdelphi.com/foros/showthread.php?t=44082)

Bobok 28-05-2007 17:19:23

Problema con opendialog
 
Hola,que tal? Tengo un problema con un opendialog. Cuando le doy Cancelar me abre el archivo de todas formas.Como lo puedo solucionar??? Gracias.

seoane 28-05-2007 17:27:48

:confused: ¿Puedes poner el código que utilizas?

Bobok 28-05-2007 17:33:58

Si,perdon. Pense que seria alguna propiedad del opendialog que me olvide de poner,por eso crei que no seria necesario el codigo. El Opendialog tiene el filter para que solo abra archivos de excel.

Código Delphi [-]
procedure TfrmMain.btnAbrirClick(Sender: TObject);
begin
  If Fnuevabusqueda = true then
    begin
      if MessageDlg ('Realizar una nueva busqueda?', mtConfirmation, [mbYes, mbNo], 0) = mrYes
        then begin
             ProgressBar1.Free;
             LimpiarGrillas;
             Opendialog1.Execute;
             self.Refresh;
             FArchivoexcel := Opendialog1.FileName;
             Grillaexcel.LoadFromXLS(Farchivoexcel);
             Barraestado.SimpleText := Opendialog1.Filename;
             end
        else
    end;
  if Fnuevabusqueda = false
    then begin
         Opendialog1.Execute;
         self.Refresh;
         FArchivoexcel := Opendialog1.FileName;
         Grillaexcel.LoadFromXLS(Farchivoexcel);
         Barraestado.SimpleText := Opendialog1.Filename;
         end;
end;

//Que bueno que leiste el Stick, acabo de editar tu mensaje para aplicar las etiquetas y puedas ver como se usan ;)

seoane 28-05-2007 17:39:22

Bien, el problema es que el método "Execute" lo debes de usar así:
Código Delphi [-]
if Opendialog1.Execute then
begin
  // Aqui abres el documento
end else
begin
  // Si entramos aqui, es que pulsamos Cancelar
end;

PD: Para incluir código en tus mensajes, hazlo dentro de las etiquetas [delphi][/delphi] se vera mucho mas claro.

Bobok 28-05-2007 17:42:25

Bueno, muchas gracias. Justo acababa de leer el sticky sobre el uso de etiquetas y estaba por modificarlo para que sea mas legible el codigo!!!


La franja horaria es GMT +2. Ahora son las 07:24:44.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi