edkardoso
25/01/2007 - 16:28
Salve galera!
Tenho visto mt gente com dúvidas de como carregar uma imagem por um endereço. Dai resolvi postar esse simples tuto. Até pq já penei bastante com isso tb e teve mt gente boa que me ajudou.
A grande vantagem da gente guardar apenas o endereço da imagem é sem dúvida o tamanho do arquivo.
Então Vamos lá:
1º Crie uma tabela com o seguintes campos, dê o nome que desejar:
---------------------------------
Foto, Numeração Automática
Descricao, Texto, 50
Link, Texto, 255
---------------------------------
2º Crie um formulário baseado nessa tabela
3º Insira um controle Imagem nesse formulário (selecione uma foto qualquer) e defina seu nome como imagem.
4º Insira um botão ao lado da caixa de texto Link
5º Acione a caixa de propriedades (F4) do seu botão e no procedimento do evento Ao clicar insira o código abaixo:
Private Sub MeuBotao_Click()
'É necessário fazer referência a Microsoft Office 11.0 Object Library
'em Ferramentas > Referências no Editor do Visual Basic
Dim CxDialog As Office.FileDialog
Set CxDialog = Application.FileDialog(msoFileDialogFilePicker)
With CxDialog
'define como seleção simples
.AllowMultiSelect = False
' Define o titulo da caixa de diálogo
.Title = "Selecione uma imagem"
' limpa os filtros
.Filters.Clear
'adiciona novos filtros
.Filters.Add "JPG", "*.jpg"
.Filters.Add "BMP", "*.bmp"
.Filters.Add "Todos os arquivos", "*.*"
'mostra a caixa de dialogo
If .Show = True Then 'se alguma imagem tiver sido escolhida
'atribuie o endereço da imagem ao campo link
Me.link = .SelectedItems(1)
'exibe a foto
me.Imagem.Visible = True
'carrega a foto
Me.Imagem.Picture = Me.link
End If
End With
End Sub
6º Vá no menu Ferramentas > Referências do Editor Visual basic e Marque a biblioteca
Microsoft Office 11.0 Object Library. Isso é imprescendível para o funcionamento da rotina.
Eu estou usando o Office 2003, de acordo com a sua versão pode ser outra, mas com o nome muito próximo a essa.
7º Volte ao seu formulário. Nas propriedades dele vá no envento No Atual e digite o código abaixo:
Private Sub Form_Current()
If Me.link <> nil Then
Me.Imagem.Visible = True
Me.Imagem.Picture = Me.link
Else
Me.Imagem.Visible = False
End If
End Sub
Pronto!! você já tem o seu pequeno álbum digital! Faça os ajustes que desejar na propriedade do controle imagem, como por exemplo no Modo tamanho, que permite que você veja a foto inteira (zoom).
Peço que postem ai para dizer se funcionou ou para tirar qualquer dúvida, ok ?!
Um abraço.
tiagotdi
03/02/2007 - 15:19
Valeu pelas dicas, so nao entendi onde coloca a segunda parte do codigo:
---
Private Sub Form_Current()
If Me.link <> nil Then
Me.Imagem.Visible = True
Me.Imagem.Picture = Me.link
Else
Me.Imagem.Visible = False
End If
End Sub
....
Abraços
Tiago
Giankarlo
09/08/2007 - 11:50
Ed,
Você saberia como posso fazer para capturar a imagem diretamente de uma WabCam? estou fazendo um sisteminha para recepção, onde todos os visitantes serão cadastrados com foto e dados pessoais simples, queria mesmo só clicar em um botão e este botão realizar o trabalho de fotografar e armazenar a foto no meu form. Tem como fazer esta tarefa usando o Access?
jeffer.sp
28/08/2007 - 15:07
Beleza Pessoal,
Eu consegui criar um link para inserir as fotos, conforme explica o POST, porém quando eu clico no botão para localizar a foto, da um "erro" ERRO DE COMPILAÇÃO - O TIPO DEFINIDO PELO USUÁRIO NÃO FOI DEFINIDO.
E aparece a linha Dim CxDialog As Office.FileDialog selecionada em amarelo.
O que fazer??
Estou precisando mto resolver isso!!!
Se alguem puder me dizer aonde está o erro...
QUOTE(Giankarlo @ 09/08/2007 - 11:50)

Ed,
Você saberia como posso fazer para capturar a imagem diretamente de uma WabCam? estou fazendo um sisteminha para recepção, onde todos os visitantes serão cadastrados com foto e dados pessoais simples, queria mesmo só clicar em um botão e este botão realizar o trabalho de fotografar e armazenar a foto no meu form. Tem como fazer esta tarefa usando o Access?

jones.s.duarte
28/08/2007 - 16:45
Ed,
Aproveitando sua bondade cara!!!!!
Como faço para que em meus menus personalizados, quando eu executar a função de imprimir ele me exiba a janela de Imprimir.
Para que eu possa selecionar a impressora em que desejo fazer a impressão, as preferencias de impressão e etc....
Vlw grande... aguardo retorno.
jeffer.sp
28/08/2007 - 20:05
beleza Kra!
Olha, ainda não sei como fazer isso direto, o que eu faço no meu BD é:
Criar uma opção para Visualização de relatorio, de depois vou em ARQUIVO, IMPRIMIR, e seleciono a Impressora e qtde de copias..
Vou ver se consigo algo e te passoo..
QUOTE(jones.s.duarte @ 28/08/2007 - 16:45)

Ed,
Aproveitando sua bondade cara!!!!!
Como faço para que em meus menus personalizados, quando eu executar a função de imprimir ele me exiba a janela de Imprimir.
Para que eu possa selecionar a impressora em que desejo fazer a impressão, as preferencias de impressão e etc....
Vlw grande... aguardo retorno.
jones.s.duarte
19/09/2007 - 11:32
Hey meu qrido... eu consegui resolver este problema de forma simples!!!
Para tanto basta selecionar o menu personalizar na barra de ferramentas com o botão direito do mouse.
Entaum localize a opção imprimir no menu arquivo da propria barra de menus,
E arrasta-la para sua barra de menus personalizados.
Qlqr duvida basta postar
Um forte Abraço
Jhooow
Maibaby
25/09/2007 - 13:54
Olá,
Fiz conforme indicado porem está dando erro de Objeto Requerido na seguinte linha:
Set CxDialog = Application.FileDialog(msoFileDialogFilePicker)
Alguem pode me ajudar?!
Psycodelic
29/10/2007 - 02:41
Resolveu meu problema cara!! muito obrigado!! o tópico está impecável e de parabéns!!! nota 10!!!
Mike Scofield
01/11/2007 - 17:33
E ai ed cardoso beleza...?
Usei seu tuto pra resolver meu problema com imagens....
porem as imagens nao aparecer, elas sáo carregadas na tabela
mas a imagem no formulario nao aparece...
Saberia me dizer oq e?
Desde ja agradeco!!!
schuby
18/06/2008 - 13:27
Caro amigo edkardoso ...
Achei muito interessante o seu trabalho, e acredito que muita gente neste fórum compartilha da minha opinião, só não teve tempo de se expressar. Estou tendo o mesmo problema que muitos no fórum estão tendo. Vou tentar utilizar o seu trabalho, e irei lhe postar caso tenha alguma dúvida. Sem dúvida alguma a idéia do amigo de apenas clicar num botão e apenas esparar o resultado é genial. Edkardoso, se você estiver trabalhando nisto, ponha por gentileza um post avisando que está tentando, pois, muita gente está na espectativa e torcendo para que você tenha sucesso. Aguardo seu retorno. Muito obrigado.
Está acusando um erro em "NIL" no código abaixo, você poderia me ajudar?
Private Sub Form_Current()
If Me.Link <> nil Then
Me.Imagem.Visible = True
Me.Imagem.Picture = Me.Link
Else
Me.Imagem.Visible = False
End If
End Sub
Obrigado,
Célio
QUOTE(edkardoso @ 25/01/2007 - 16:28)

Salve galera!
Tenho visto mt gente com dúvidas de como carregar uma imagem por um endereço. Dai resolvi postar esse simples tuto. Até pq já penei bastante com isso tb e teve mt gente boa que me ajudou.
A grande vantagem da gente guardar apenas o endereço da imagem é sem dúvida o tamanho do arquivo.
Então Vamos lá:
1º Crie uma tabela com o seguintes campos, dê o nome que desejar:
---------------------------------
Foto, Numeração Automática
Descricao, Texto, 50
Link, Texto, 255
---------------------------------
2º Crie um formulário baseado nessa tabela
3º Insira um controle Imagem nesse formulário (selecione uma foto qualquer) e defina seu nome como imagem.
4º Insira um botão ao lado da caixa de texto Link
5º Acione a caixa de propriedades (F4) do seu botão e no procedimento do evento Ao clicar insira o código abaixo:
Private Sub MeuBotao_Click()
'É necessário fazer referência a Microsoft Office 11.0 Object Library
'em Ferramentas > Referências no Editor do Visual Basic
Dim CxDialog As Office.FileDialog
Set CxDialog = Application.FileDialog(msoFileDialogFilePicker)
With CxDialog
'define como seleção simples
.AllowMultiSelect = False
' Define o titulo da caixa de diálogo
.Title = "Selecione uma imagem"
' limpa os filtros
.Filters.Clear
'adiciona novos filtros
.Filters.Add "JPG", "*.jpg"
.Filters.Add "BMP", "*.bmp"
.Filters.Add "Todos os arquivos", "*.*"
'mostra a caixa de dialogo
If .Show = True Then 'se alguma imagem tiver sido escolhida
'atribuie o endereço da imagem ao campo link
Me.link = .SelectedItems(1)
'exibe a foto
me.Imagem.Visible = True
'carrega a foto
Me.Imagem.Picture = Me.link
End If
End With
End Sub
6º Vá no menu Ferramentas > Referências do Editor Visual basic e Marque a biblioteca
Microsoft Office 11.0 Object Library. Isso é imprescendível para o funcionamento da rotina.
Eu estou usando o Office 2003, de acordo com a sua versão pode ser outra, mas com o nome muito próximo a essa.
7º Volte ao seu formulário. Nas propriedades dele vá no envento No Atual e digite o código abaixo:
Private Sub Form_Current()
If Me.link <> nil Then
Me.Imagem.Visible = True
Me.Imagem.Picture = Me.link
Else
Me.Imagem.Visible = False
End If
End Sub
Pronto!! você já tem o seu pequeno álbum digital! Faça os ajustes que desejar na propriedade do controle imagem, como por exemplo no Modo tamanho, que permite que você veja a foto inteira (zoom).
Peço que postem ai para dizer se funcionou ou para tirar qualquer dúvida, ok ?!
Um abraço.
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor
clique aqui.