Ir para conteúdo
Fórum Script Brasil
  • 0

Como Tratar Este Erro ? - (RESOLVIDO)


Alessandro

Pergunta

Quanto tempo pessoal, bom eu estou com o seguinte problema :

1º Eu fiz uma agenda telefônica e quero carregar fotos

2º Está tudo funcionando, ou seja, eu consigo carregar a imagem no BD.

3º o Código está assim (No click do Botão):

OpenPictureDialog1.Execute;
dataModule1.Table1Img.LoadFromFile(OpenPictureDialog1.FileName);

4º O problema é que quando eu clico no botão mas não seleciono nada, ou seja, clico em cancelar aparece uma mensagem Cannot open file

Alguém sabe como eu faço para evitar isso ??? biggrin.gif

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Guest - Alexandre -

Depois do comando OpenPictureDialog1.Execute; digite o seguinte código:

If OpenPictureDialog1.FileName <> '' Then

dataModule1.Table1Img.LoadFromFile(OpenPictureDialog1.FileName);

Ou você pode também criar no BD um campo para guardar somente o endereço de onde está a foto, fica bem melhor o código e o BD não fica pesado, o código para isso é o seguinte:

No Access

Crie uma tabela em seu banco de dados com os seuintes campos:

Código – AutoNumérico

FotoTela – Texto – 200 caracteres

Salve a tabela como TelaPrincipal.

No Delphi

Crie um menu para receber o código de alteração. Adicione um componente OpenPictureDialog1 que está na paleta Dialogs, e altere a propriedade InitialDir para o local que está armazenado as suas imagens (isso não é obrigatório) e altere a propriedade Name para OpenPictureDialog. Adicione um componente Image1 que está na paleta Aditional, no form principal e altere as seguintes propriedades: align para alClient, autoSize para True, Name para ImgPrinc, Stretch para True. Agora no evento OnClick do menu que você criou adicione o seguinte código:

procedure TFrmPrincipal.AlterarPlanodeFundo1Click(Sender: TObject);

begin

OpenPictureDialog.Execute;

DmDados.TblTelaPrinc.Edit;

DmDados.TblTelaPrinc.FieldByName('FotoTela').AsString := OpenPictureDialog.FileName;

DmDados.TblTelaPrinc.Post;

ImgPrinc.Picture.LoadFromFile(OpenPictureDialog.FileName);

end;

Obs: Deixe a propriedade Active da tabela = True, se não você terá que alterar o código um pouco.

No evento OnActivate do form principal adicione o seguinte código:

procedure TFrmPrincipal.FormActivate(Sender: TObject);

begin

OpenPictureDialog.FileName := DmDados.TblTelaPrinc.FieldByName('FotoTela').AsString;

ImgPrinc.Picture.LoadFromFile(OpenPictureDialog.FileName);

end;

Espero que te ajude caso contrário mande um e-mail que tenhooutros códigos e posso te passar. Falou Amigo...

aslalexandre@hotmail.com

Link para o comentário
Compartilhar em outros sites

  • 0

Show de bola cara era isso mesmo que precisava

If openPictureDialog1.FileName <> '' then.....

valeu pela 2ª dica.....mas é que eu prefiro gravar a img, pois o BD é simples......de qualquer forma parabéns pela didática....

Abraços Alexandre....

Fechou biggrin.gif

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...