Avatar billede hugopedersen Nybegynder
25. februar 2012 - 12:56 Der er 2 kommentarer og
1 løsning

Uheldig opførsel

Jeg har en funktion der bruges til at vælge en fil fra disken og opdatere en tabel med dette navn.
Alt det fungerer helt som forventet, men der sker det at når fildialogen lukkes, så er det som om den form den er kaldt fra mister fokus. Jeg skal altså trykke med musen i formen før jeg kan bladre videre i mine records i tabellen.

Det er lidt irriterende og jeg ville gerne undgå det, men hvordan?

procedure TfrmJsAttachments.FileAdd;
var
  dlgOpen: TOpenDialog;
  FileName: string;
begin
  dlgOpen := TOpenDialog.Create(Self);
  try
    dlgOpen.InitialDir := User.Folder(ufAttachment);
    dlgOpen.Options := [ofFileMustExist];
    dlgOpen.Filter := 'Word 2007 template (*.dotx)|*.dotx|Word 2003 template (*.dot)|*.dot|' +
                      'Word 2007 dokument (*.docx)|*.docx|Word 2003 dokument (*.doc)|*.doc|' +
                      'PDF fil (*.pdf)|*.pdf|Alle filer (*.*)|*.*';
    dlgOpen.FilterIndex := 5;
    if dlgOpen.Execute then
      FileName := dlgOpen.FileName;
  finally
    dlgOpen.Free;
  end;
  if FileName <> '' then
    begin
      try
        qryAttachments.Edit;
        qryAttachments.FieldByName('fldattachment_name').AsString := FolderRemove(FileName);
        qryAttachments.UpdateRecord;
      except
        on E:exception do
          Logfile.Error('frmJsAttachments.FileAdd: ' + E.Message);
      end;
    end;
  ActiveControl := grdAttachments;
end;
Avatar billede falster Ekspert
25. februar 2012 - 13:54 #1
Indtil, der kommer mere kvalificerede forslag;-)

Hvis fokus bevares, hvis du dropper beringelserne fra og med "if FileName <> '' then", så er problemet indsnævret lidt.

(Ja vel faktisk også, hvis fokus stadig mistes.)
Avatar billede kloge Nybegynder
28. februar 2012 - 11:02 #2
Kald setfocus før
ActiveControl := grdAttachments;
Avatar billede hugopedersen Nybegynder
29. februar 2012 - 09:39 #3
Ja hvorfor gøre det mere besværligt end nødvendigt :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester