Sérgio_BR 0 Denunciar post Postado Abril 7, 2008 Sempre precisei das dicas do Imasters, agora, com a devida licença, estou compartilhando uma dica, para aqueles que querem exibir fotos/imagens em seus aplicativos, sem gravá-las no BD...o que ocuparia muito espaço... Esta dica foi usada em um aplicativo em que o BD foi criado no Paradox...testei e funcionou perfeitamente!!! Código do botão inserir foto: procedure TfrmCadastro.btnInserirFotoClick(Sender: TObject); begin If OpenPictureDialog1.Execute then tbSuaTabela.Edit; Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); tbSuaTabela.FieldByName('Foto').AsString:= OpenPictureDialog1.FileName; if tbSuaTabela.state in [dsedit,dsinsert] then tbSuaTabela.Post; end; No evento OnActivate digite: procedure TfrmCadastro.FormActivate(Sender: TObject); begin tbMembros.Open; frmSuaTabela.Image1.Picture.Assign(nil); If Not tbMembros.FieldByName('Foto').IsNull then frmCadastro.Image1.Picture.LoadFromFile(tbSuaTabela.FieldByName('Foto').AsString); end; Código do botão excluir foto: procedure TfrmCadastro.btnExcluirFotoClick(Sender: TObject); begin If tbSuaTabelas.FieldByName('Foto').IsNull then Application.MessageBox('Este registro não contém foto!', 'A V I S O', MB_Ok + MB_ICONERROR) else If Application.MessageBox('Deseja excluir a foto deste registro?','A T E N Ç Ã O', MB_YesNo + MB_ICONQUESTION)= IDYes then Begin tbSuaTabela.Edit; tbSuaTabela.FieldByName('Foto').Clear; tbSuaTabela.Post; tbSuaTabela.First; end; end; Aqui, o código colocado no evento OnClick do DBNavigator: procedure TfrmCadastro.NavRegistrosClick(Sender: TObject; Button: TNavigateBtn); begin frmCadastro.Image1.Picture.Assign(nil); If Not tbSuaTabela.FieldByName('Foto').IsNull then frmCadastro.Image1.Picture.LoadFromFile(tbSuaTabela.FieldByName('Foto').AsString); end; E, para gravar fisicamente os dados, selecione a tabela em questão e no evento AfterPost, digite: (Não se esqueça de digitar: DBIProcs, na cláusula Uses...) procedure TfrmCadastro.tbMembrosAfterPost(DataSet: TDataSet); begin DbiSaveChanges(tbSuaTabela.Handle); end; Espero ter ajudado. Qualquer coisa... selferbr@yahoo.com.br. Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Abril 8, 2008 Movido iMasters Fóruns » Programação » Delphi http://forum.imasters.com.br/public/style_emoticons/default/seta.gif iMasters Fóruns » Programação » Delphi » Laboratório de scripts (Delphi) Compartilhar este post Link para o post Compartilhar em outros sites