Fórum Ajuda para foto no cadastro ! #365287

21/10/2008

0

Eu peguei este código e adaptei no meu sistema só que há um problema que a foto não fica visivel na tela do form, preciso de ajuda !

procedure TCadCli.SpeedButton1Click(Sender: TObject);
var
  DirNomeFoto: string;
  NomeFoto: string;
  procedure ConverteParaJpeg(ACaminhoFoto: string);
  var
    cjBmp: TBitmap;
    cjJpg: TJpegImage;
    strNomeSemExtensao: string;
    AFoto: TImage;
  begin
    AFoto:= TImage.Create(CadCli);
    AFoto.Parent := CadCli;
    AFoto.Visible := False;
    AFoto.Picture.Bitmap.LoadFromFile(ACaminhoFoto + ´.bmp´);

    cjJpg := TJPegImage.Create;
    cjBmp := TBitmap.Create;

    cjBmp.Assign(AFoto.Picture.Bitmap);
    cjJpg.Assign(cjBMP);

    cjJpg.SaveToFile(ACaminhoFoto + ´.jpg´);
    DeleteFile(ACaminhoFoto + ´.bmp´);
    cjJpg.Free;
    cjBmp.Free;
    AFoto.Free;
  end;
begin
  frmCaptura := TfrmCaptura.Create(Self);
  try
    with frmCaptura, camCamera, dm, IBDataSet1 do
    begin
      DirNomeFoto := ExtractFilePath(Application.ExeName) +
        LimpaString(IBDataSet1RG_IE.AsString) + ´.bmp´;

      NomeFoto := ExtractFilePath(DirNomeFoto) +
        Copy(ExtractFileName(DirNomeFoto),1, Length(ExtractFileName(DirNomeFoto))-4);

      FichierImage := ExtractFileName(DirNomeFoto);
      if frmCaptura.ShowModal = mrOk then
      begin
        CaptureImageDisque;
        ConverteParaJpeg(NomeFoto);
        IBDataSet1FOTO.AsString := NomeFoto + ´.jpg´;
        imgFoto.Picture.LoadFromFile(´IBDataSet1FOTO´);
      end;
    end;
  finally
    FreeAndNil(frmCaptura);
  end;
end;

function TCadCli.LimpaString(ATexto: String):String;
var
  I: Integer;
  s: string;
begin
  S := ´´;
  for I := 1 To Length(ATexto) Do
    if (ATexto[I] in [´0´..´9´]) then
      S := S + Copy(ATexto, I, 1);
  Result := S;
end;

procedure TCadCli.DataSource1DataChange(Sender: TObject; Field: TField);
var
  strCaminho: string;
  strRG : string;
begin
  with dm do
  begin
    if not IBDataset1.IsEmpty then
      if FileExists(IBDataset1.FieldByName(´FOTO´).AsString) then
        CadCli.imgFoto.Picture.LoadFromFile(
          IBDataset1.FieldByName(´FOTO´).AsString)
      else
        CadCli.imgFoto.Picture := Nil;
  end;
end;


só falta isso para ficar 100¬


Afterdev

Afterdev

Responder

Posts

21/10/2008

Max.jgs

Tem uma linha de comando que esta TImagem.
É um comonente TImagem e não TDBImagem.
Veja é é isso. Se for você tem que usar um componente TImagem...



TImage.Create(CadCli);


Responder

Gostei + 0

21/10/2008

Max.jgs

Tem uma linha de comando que esta TImagem. É um comonente TImagem e não TDBImagem. Veja é é isso. Se for, você tem que usar um componente TImagem... TImage.Create(CadCli);



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar