COPIAR IMAGEM
Olá a todos
Tenho uma Image1 com um gráfico e AutoRedraw=True.
Copio esse imagem para uma Picture3, também com AutoRedraw=True com
Picture3.PaintPicture Picture1.Image, 0, 0, Picture1.Width, Picture1.Height, Picture1.Left, Picture1.Top, Picture1.Width, Picture1.Height
Fica lá correctamente.
Depois, apago a imagem de Picture1 e tento copiá-la de Picture3 com
Picture1.PaintPicture Picture3.Image, 0, 0, Picture3.Width, Picture3.Height, Picture3.Left, Picture3.Top, Picture3.Width, Picture3.Height
Não copia.
As duas Picture são exactamente iguais, com as mesmas dimensões.
Por que não copia?
Onde está o erro?
Desde já obrigado pela ajuda que vier.
Tenho uma Image1 com um gráfico e AutoRedraw=True.
Copio esse imagem para uma Picture3, também com AutoRedraw=True com
Picture3.PaintPicture Picture1.Image, 0, 0, Picture1.Width, Picture1.Height, Picture1.Left, Picture1.Top, Picture1.Width, Picture1.Height
Fica lá correctamente.
Depois, apago a imagem de Picture1 e tento copiá-la de Picture3 com
Picture1.PaintPicture Picture3.Image, 0, 0, Picture3.Width, Picture3.Height, Picture3.Left, Picture3.Top, Picture3.Width, Picture3.Height
Não copia.
As duas Picture são exactamente iguais, com as mesmas dimensões.
Por que não copia?
Onde está o erro?
Desde já obrigado pela ajuda que vier.
[ô] Carregando Picture3
Private Sub Command1_Click()
Picture3.Picture = Picture1.Picture
End Sub
[ô] Apagando Picture1
Private Sub Command2_Click()
Picture1.Picture = Nothing
End Sub
[ô] Transferindo Picture3 para Picture1
Private Sub Command3_Click()
Picture1.Picture = Picture3.Picture
End Sub
mude a propriedade autoredraw das duas picturebox para [txt-color=#0000f0]True[/txt-color]
e proceda desta maneira
e proceda desta maneira
Private Sub Command1_Click()
Picture3.PaintPicture Picture1.Image, 0, 0, Picture1.Width, Picture1.Height
Picture1.Picture = Nothing
End Sub
Private Sub Command2_Click()
Picture1.PaintPicture Picture3.Image, 0, 0, Picture3.Width, Picture3.Height
Picture3.Picture = Nothing
End Sub
Não há necessidade de chamar o método PaintPicture, que irá copiar a imagem pixel a pixel, quando se pode transferir ela de buffer para buffer, diretamente (muito mais rapido, dependendo do tamanho da imagem). Bem, ao menos é minha opnião.
Tópico encerrado , respostas não são mais permitidas