Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

legd1991

Explicação de código parcial de carregamento de imagem

Recommended Posts

legd1991

boas,

nao sei se aqui é o sitio ideal para fazer esta pergunta, mas se nao for peço ao moderador q a mova sff..

aqui vai:

na minha pap tenho uma parte em q trabalha com fotos, mas tenho de explicar o código tdo do projecto no manual do programador, mas estou com problemas em conseguir explicar correctamente este pedaço de código:

Dim theMemStream As New System.IO.MemoryStream()
        theMemStream.Write(newbyte, 0, newbyte.Length)
        PictureBox2.Image = New Bitmap(Image.FromStream(theMemStream))
        theMemStream.Close()

alguem me podia dar uma explicaçao deste código?

obrigado

cumps

legd1991

Share this post


Link to post
Share on other sites
ribeiro55

Bem, se está na tua PAP e não sabes o que o código faz... é grave :)

O post está no sítio certo, o título é que podia ser melhor. Vou alterar desde já.

 'instancias um novo memorystream, vazio
Dim theMemStream As New System.IO.MemoryStream()
'escreves tudo o que tens no byte "newbyte" para o stream
theMemStream.Write(newbyte, 0, newbyte.Length)
'instancias uma classe bitmap e passas esse stream, que agora contém dados da imagem
'a esta altura, se a imagem for de formato "conhecido", tens uma classe bitmap com referencia à tal imagem
'por fim, dás a imagem que acabou de ser "extraída" do newbyte à imagem da PictureBox
'depois desta linha, a imagem aparece na picturebox
PictureBox2.Image = New Bitmap(Image.FromStream(theMemStream))
'finalmente, fechas o stream porque não vais precisar mais dele
theMemStream.Close()

Deixa que te diga, que a própria classe Bitmap faz o trabalho por ti.

Basta:

PictureBox2.Image = New Bitmap("c:\qqcoisa.jpg")

onde "c:\qqcoisa.jpg" é o caminho absoluto para o teu ficheiro de imagem.


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites
bioshock

Mas o Bitmap tem mesmo que ser utilizado?

Eu custumo usar:

PictureBox1.Image = Image.FromFile("...")

Share this post


Link to post
Share on other sites
ribeiro55

Deve ser, internamente, exactamente a mesma coisa, as far as i'm concerned.

Cabe ao developer escolher o datatype que mais lhe convém.


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites
legd1991

mas eu tenho as imagens numa bd.. e para cada aluno tem uma imagem.. eu saber sei o q o código faz, queria era ter uma explicação melhor e mais correcta.. mas obrigado pela ajuda

Share this post


Link to post
Share on other sites
ribeiro55

Sendo assim, está correcto.

Na BD, armazenas imagens como Binary Large OBject (BLOB) (ou datatype semelhante), e uma das formas de o resgatar é através de uma array de Bytes.


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.