IMPRIMIR FOTO DENTRO DE PICTURE BOX
veja bem algo esta ocasionando erro em seu projeto eu fiz um teste chamando uma foto, pelo loadpicture e depois imprimindo o form, tento a impressão de tudo inclusive a foto.
revise seu projeto aqui funcionou.
Private Sub Command1_Click()
Me.PrintForm
End Sub
Private Sub Form_Load()
Picture1.Picture = LoadPicture([Ô]C:\Documents and Settings\Paulista\Meus documentos\Minhas imagens este.jpg[Ô])
End Sub
revise seu projeto aqui funcionou.
poste seu código completo
Aqui eu carrego a foto no Picture box
Aqui eu gravo a imagem tirada de uma web cam
Aqui imprimi
Meu problema é que o conteudo do Picture bo nao saiu.. saiu o componente vazio.. e como pode ver, se nao tiver foto meu picture fica invisivel
O form todo foi impresso mas como ja disse o objeto picture box imprimiu vazio :(
If IsNull(dsCliente!caminhofoto) Then
PctFoto.Visible = False
Else
If Err = (53) Then GoTo continua
PctFoto.Visible = True
PctFoto.Picture = LoadPicture(App.Path & dsCliente!caminhofoto)
PctFoto.PaintPicture PctFoto.Picture, 0, 0, PctFoto.Width, PctFoto.Height
End If
Exit Function
continua:
MsgBox [Ô]Foto do cliente não está disponÃvel[Ô], vbExclamation, [Ô]Atenção![Ô]
dsCliente.Edit
dsCliente!caminhofoto = Null
dsCliente.Update
Aqui eu gravo a imagem tirada de uma web cam
op = MsgBox([Ô]DESEJA REALMENTE SALVAR A IMAGEM PARA O CLIENTE [Ô] & LBLCLIENTE & [Ô] ?[Ô], vbYesNo, [Ô]ATENÇÃO!![Ô])
If op = vbYes Then
SavePicture Picture2, App.Path & [Ô]\Foto Cliente\FotoCliente[Ô] & FormCadCli.txtCodigo & [Ô].jpeg[Ô]
Else
Picture2.Picture = Nothing
GoTo desliga
End If
[ô]===============
[ô]procura na tabela cliente e edita salvando o caminho da foto
dsCliente.FindFirst [Ô]codigo = [Ô] & FormCadCli.txtCodigo
If Not dsCliente.nomatch Then
dsCliente.Edit
dsCliente!caminhofoto = [Ô]\Foto Cliente\FotoCliente[Ô] & FormCadCli.txtCodigo & [Ô].jpeg[Ô]
dsCliente.Update
End If
Aqui imprimi
If KeyCode = 118 Then
Me.PrintForm
End If
Meu problema é que o conteudo do Picture bo nao saiu.. saiu o componente vazio.. e como pode ver, se nao tiver foto meu picture fica invisivel
O form todo foi impresso mas como ja disse o objeto picture box imprimiu vazio :(
Percebi o seguinte:
PctFoto.Picture = LoadPicture(App.Path & dsCliente!caminhofoto)
PctFoto.PaintPicture PctFoto.Picture, 0, 0, PctFoto.Width, PctFoto.Height
se não me engano vc está dimensionando a foto no picture box, e isto é o que causa o BUG, não sei o motivo, algo que acho não descubriremos.
porém achei uma solução.
coloque um IMAGEBOX dentro do PICTUREBOX, mude a propriedade STRECH do IMAGEBOX para True
e mude isto em seu código
de:
Para:
e vc conseguirá imprimir sua foto
boa sorte
PctFoto.Picture = LoadPicture(App.Path & dsCliente!caminhofoto)
PctFoto.PaintPicture PctFoto.Picture, 0, 0, PctFoto.Width, PctFoto.Height
se não me engano vc está dimensionando a foto no picture box, e isto é o que causa o BUG, não sei o motivo, algo que acho não descubriremos.
porém achei uma solução.
coloque um IMAGEBOX dentro do PICTUREBOX, mude a propriedade STRECH do IMAGEBOX para True
e mude isto em seu código
de:
PctFoto.Visible = True
PctFoto.Picture = LoadPicture(App.Path & dsCliente!caminhofoto)
PctFoto.PaintPicture PctFoto.Picture, 0, 0, PctFoto.Width, PctFoto.Height
Para:
PctFoto.Visible = True
Image1.Picture = LoadPicture(App.Path & dsCliente!caminhofoto)
Image1.Top = 0
Image1.Left = 0
Image1.Height = PctFoto.Height
Image1.Width = PctFoto.Width
e vc conseguirá imprimir sua foto
boa sorte
Aproveitando o topico, porque meu tratamento para possiveis erros ao preenchimento do picture ou image nao funciona..
fiz de 2 maneiras ~[Ô] On error goto continua[Ô]e if err(numero) then goto continua
??
fiz de 2 maneiras ~[Ô] On error goto continua[Ô]e if err(numero) then goto continua
??
coloque o On Error antes de tudo que funcionará
não o coloque dentro do if, porém se for usar dentro do if proceda da seguinte maneira
não o coloque dentro do if, porém se for usar dentro do if proceda da seguinte maneira
If IsNull(dsCliente!caminhofoto) Then
PctFoto.Visible = False
Else
On Error Goto Continua
PctFoto.Visible = True
PctFoto.Picture = LoadPicture(App.Path & dsCliente!caminhofoto)
PctFoto.PaintPicture PctFoto.Picture, 0, 0, PctFoto.Width, PctFoto.Height
Exit Function
continua:
If Err.Number = 53 Then
MsgBox [Ô]Foto do cliente não está disponÃvel[Ô], vbExclamation, [Ô]Atenção![Ô]
dsCliente.Edit
dsCliente!caminhofoto = Null
dsCliente.Update
End If
End If
Exit Function
Olá Marcelo, bom ja tinha feito dessas duas maneiras :X
Funciona aas vezes e as vezes nao.. muito estranho
Funciona aas vezes e as vezes nao.. muito estranho
pode estar acontecendo de estarem ocorrendo varios erros, porém vc só trata o erro 53
Desculpe me expressei mal... tentei das duas maneiras com os 2 tratamentos.. a primeira tentativa foi o [Ô]On Error goto x[Ô]
logo após tentei com o outro tratamento..
Oq eu quero tratar na verdade é uma possivel exclusao da foto de um cliente...
logo após tentei com o outro tratamento..
Oq eu quero tratar na verdade é uma possivel exclusao da foto de um cliente...
tente o printform de novo desta vez com o picture setado para autoredraw = true.
Tópico encerrado , respostas não são mais permitidas