Usuário com melhor resposta
Dúvida: Clicar sobre uma PictureBox e desenhar outra imagem por cima usando (With.Me) no VS2015

Pergunta
-
Boa Noite.
Estou criando uma aplicação simples de teste em vb.net 2015, pois se der certo, passarei o código para a aplicação principal. Nessa aplicação eu teria que clicar sobre uma picturebox ou painel, e assim criar uma outra imagem onde eu cliquei (MousePosition), como se fosse desenhar. O prolema é que faço tudo certinho, mas na hora de criar a picturebox, quando eu clico em cima do painel ou de outra imagem ela simplesmente não aparece, não esta dando nenhum erro, e nem na form aparece a imagem no local onde eu cliquei. Mas quando eu usava o VS2010 isso funcionava corretamente. Usei o seguinte código:
Imports System.Drawing.Color Public Class Form1 Inherits System.Windows.Forms.Form Private ItemUser As New PictureBox Private Sub PictureBox1_Click(sender As Object, e As EventArgs) Handles PictureBox1.Click With Me.ItemUser .Image = (My.Resource.ImagemTeste) .BackgroundImageLayout = ImageLayout.Stretch .Size() = New System.Drawing.Point(56, 57) .Location = New System.Drawing.Point(MousePosition) End With With Me.Controls .Add(ItemUser) End With
Será que o VS2015 Não esta aceitando este código? Tudo que eu quero é simplesmente poder clicar na imagem ou painel, e aparecer em cima, uma outra imagem que eu queira (picturebox) bem no local onde eu cliquei. Isso dava certo no 2010 não sei porque não esta pegando no 2015. E outra ja até tentei mudar o código de:
Imports System.Drawing.Color
para:
Imports System.Drawing.Bitmap
Mas nada adiantou. Se puder ajudar agradeço.
Respostas
-
Obrigado Robson pela ajuda, mas já descobri qual é o problema. Reinstalei o VS2010 pra ver, e deu mais ou menos certo, mas é que a imagem não esta esticando no .StretchImage por mais que eu habilite isso no código ela continua no tamanho original e por ela ser .png de fundo transparente, não vai mostrar nada porque esta dando zoom no "nada" se o fundo fosse colorido por exemplo, só ia mostrar a cor por que esta dando zoom na imagem e não esta mostrando ela inteira e se eu alterar o BorderStyle para FixedSingle por exemplo,vai dar pra "ver" pelo menos a borda quadrada da imagem, mas ela inteira não estou conseguindo. E um outro problema é que a imagem não esta aparecendo exatamente onde eu clico (embaixo do mouse) eu queria que fosse assim. O ruim é que leio e re-leio o código caçando "erro" e quanto mais leio mas vejo que esta certo, e não entendo porque esta dando errado. Mas em fim obrigado pela ajuda, vou tentar me virar aqui, se o problema persistir, volto aqui.
- Editado Vini lima terça-feira, 31 de janeiro de 2017 15:10 Erro nas palavras
- Marcado como Resposta Robson William SilvaModerator terça-feira, 31 de janeiro de 2017 15:17
Todas as Respostas
-
Bom dia Vini Lima,
Por gentileza, verifique se a sugestão neste link o ajuda:
http://stackoverflow.com/questions/29908240/draw-a-dot-in-a-form-on-click-event
Atenciosamente,
Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
Obrigado Robson pela ajuda, mas já descobri qual é o problema. Reinstalei o VS2010 pra ver, e deu mais ou menos certo, mas é que a imagem não esta esticando no .StretchImage por mais que eu habilite isso no código ela continua no tamanho original e por ela ser .png de fundo transparente, não vai mostrar nada porque esta dando zoom no "nada" se o fundo fosse colorido por exemplo, só ia mostrar a cor por que esta dando zoom na imagem e não esta mostrando ela inteira e se eu alterar o BorderStyle para FixedSingle por exemplo,vai dar pra "ver" pelo menos a borda quadrada da imagem, mas ela inteira não estou conseguindo. E um outro problema é que a imagem não esta aparecendo exatamente onde eu clico (embaixo do mouse) eu queria que fosse assim. O ruim é que leio e re-leio o código caçando "erro" e quanto mais leio mas vejo que esta certo, e não entendo porque esta dando errado. Mas em fim obrigado pela ajuda, vou tentar me virar aqui, se o problema persistir, volto aqui.
- Editado Vini lima terça-feira, 31 de janeiro de 2017 15:10 Erro nas palavras
- Marcado como Resposta Robson William SilvaModerator terça-feira, 31 de janeiro de 2017 15:17