Utilisation GetcurrentDirectory dans une fonction D6 et Windows 10 (Ed 2004)
Bonjour à toutes et à tous,
Je n'arrive pas à ouvrir mon TopenDialogPicture dans le dossier de l'application.
Je sais que c'est un bug récurrent de Windows depuis un certain temps mais directement avec le composant on pouvait utiliser des astuces.
Voici mon code dans une fonction :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
function OuvrirBitmap(var NomFichier: string; Bitmap: TBitmap): Boolean;
var
P: TPicture;
begin
Result := False;
if NomFichier = '' then
begin
with TOpenpictureDialog.Create(nil) do
//with FrmReflet.opd1 do
try
Options := [ofHideReadOnly, ofFileMustExist];
Filter := 'BMP et JPEG(*.bmp;*.jpg)|*.bmp;*.jpg|JPEG (*.jpg)|*.jpg';
InitialDir := GetCurrentDir;
if Execute then NomFichier := FileName;
finally
FileName:= '';
Free;
end;
Application.ProcessMessages; // pour rafraîchir l'affichage
end;
if NomFichier = '' then Exit;
P := TPicture.Create;
try
P.LoadFromFile(NomFichier);
Bitmap.Assign(nil);
Bitmap.Width := P.Width;
Bitmap.Height := P.Height;
Bitmap.Canvas.Draw(0, 0, P.Graphic);
Result := True;
finally
P.Free;
end;
end; |
Merci de votre attention, ce n'est pas urgent c'est uniquement pour comprendre !
@+,
cincap