Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

zarino

[Resolvido] Problemas ao Salvar imagem Alterada em PictureBox

Recommended Posts

dae galera, vim pedir uma ajuda de vcs ai...seguinte, estou usando o picturebox pra editar fotos, num sistema, so que edito as fotos, adiciono linha e pontos, como um paint, so que na hora de salvar usando o comando:

 

PictureBox1.Image.Save("C:\TesteAlterado.PNG", System.Drawing.Imaging.ImageFormat.Png)

 

ele so salva a foto original, sem alterações nem nada

 

Vlwww

 

Codigo:

 

Imports System.IO
Imports System.Reflection

Public Class Frm_Cadastro_Pontos_Vendas
	Private cor As String = ""
	Dim pincel As Brush
	Dim canvas As Graphics
	Private primeiroPonto As Point = New Point(-1, -1)
	Dim pontox, pontoy As Integer
	Dim mesmoponto As Boolean = False
	Dim stream As New MemoryStream()

	Private Sub BtnLocalizarVendedor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnLocalizarVendedor.Click
		TabelaVendedoresMapa.Rows.Clear()

		TabelaVendedoresMapa.Rows.Add("orange", Nothing, "1", "Cesar Rech")
		TabelaVendedoresMapa.Rows.Add("red", Nothing, "2", "Edu Caldeira")
		TabelaVendedoresMapa.Rows.Add("aqua", Nothing, "3", "Andre Matos")


		For i = 0 To TabelaVendedoresMapa.RowCount Step 1
			Dim celula As New DataGridViewCellStyle
			Try
				With celula
					.BackColor = Color.FromName(TabelaVendedoresMapa.Rows(i).Cells(0).Value.ToString)
					.ForeColor = Color.Black
					.SelectionBackColor = Color.FromName(TabelaVendedoresMapa.Rows(i).Cells(0).Value.ToString)
					.SelectionForeColor = Color.FromName("HighlightText")
					.Font = New Font("Microsoft Sans Serif", 8, FontStyle.Regular, 3, 0, False)
					.Alignment = DataGridViewContentAlignment.MiddleLeft
					.WrapMode = DataGridViewTriState.True
				End With
				TabelaVendedoresMapa.Rows(i).Cells(1).Style = celula
				celula = Nothing
			Catch ex As Exception
			End Try
		Next
		pincel = New SolidBrush(Color.FromName(TabelaVendedoresMapa.Rows(0).Cells(1).Style.BackColor.Name))
	End Sub
	Private Sub areaDesenho_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
		If TabelaVendedoresMapa.RowCount > 0 Then
			' ----- Primeiro click : registra a localização.
			primeiroPonto = e.Location
			' ----- desenha uma marca neste ponto
			Desenhar(e.Location)
		End If
	End Sub

	Private Sub Desenhar(ByVal centerPoint As Point)
		'Area a ser desenhada
		canvas = PictureBox1.CreateGraphics

		If centerPoint.X = pontox And centerPoint.Y = pontoy Then
			mesmoponto = True
			Exit Sub
		End If



		mesmoponto = False

		'Declaração do Ponto
		Dim rect As New RectangleF(centerPoint.X, centerPoint.Y, 1, 1)
		pontox = centerPoint.X
		pontoy = centerPoint.Y
		'Tamanho do Ponto

		rect.Inflate(SetaTamanho.Value, SetaTamanho.Value)


		'Coloca o ponto na PictureBox
		canvas.FillEllipse(pincel, rect)

		Try
			Tabela_Cadastro_Pontos_VendaDataGridView.Rows.Add("Codigo", TabelaVendedoresMapa.CurrentRow.Cells(2).Value.ToString, _
														TabelaVendedoresMapa.CurrentRow.Cells(3).Value.ToString, "Digite a Cidade")
		Catch ex As Exception
		End Try

	End Sub

	Private Sub CapturarCor()

	End Sub

	Private Sub TabelaVendedoresMapa_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TabelaVendedoresMapa.MouseClick

		Try
			pincel = New SolidBrush(Color.FromName(TabelaVendedoresMapa.CurrentRow.Cells(1).Style.BackColor.Name))
			Tabela_Cadastro_Pontos_VendaDataGridView.Rows.Clear()
		Catch ex As Exception
		End Try
	End Sub
	Private Sub BtnZoonIn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnZoonIn.Click

		Dim I As Integer = PictureBox1.Image.PhysicalDimension.Height = PictureBox1.Image.Height * 2
		Dim A As Integer = PictureBox1.Image.PhysicalDimension.Width = PictureBox1.Image.Width * 2

	End Sub
	Private Sub Frm_Cadastro_Pontos_Vendas_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
		'TODO: This line of code loads data into the 'DSTabela_Ponto_Venda.Tabela_Cadastro_Pontos_Venda' table. You can move, or remove it, as needed.
		Me.Tabela_Cadastro_Pontos_VendaTableAdapter.Fill(Me.DSTabela_Ponto_Venda.Tabela_Cadastro_Pontos_Venda)

	End Sub

	Private Sub Tabela_Cadastro_Pontos_VendaBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Tabela_Cadastro_Pontos_VendaBindingNavigatorSaveItem.Click
		Me.Validate()
		Me.Tabela_Cadastro_Pontos_VendaBindingSource.EndEdit()
		Me.TableAdapterManager.UpdateAll(Me.DSTabela_Ponto_Venda)

		PictureBox1.Image.Save("C:\TesteAlterado.PNG", System.Drawing.Imaging.ImageFormat.Png)


	End Sub

	Private Sub BtnRemoverVendedor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnRemoverVendedor.Click
		Try
			Tabela_Cadastro_Pontos_VendaDataGridView.Rows.Clear()
			TabelaVendedoresMapa.Rows.RemoveAt(TabelaVendedoresMapa.CurrentRow.Index)
			TabelaVendedoresMapa.CurrentRow.Selected = True
			TabelaVendedoresMapa_MouseClick(Nothing, Nothing)
		Catch ex As Exception
			MessageBox.Show(ex.Message)
		End Try
	End Sub

	Private Sub BtnAbrirMapa_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAbrirMapa.Click
		My.Forms.Frm_Consulta_Mapas.MdiParent = My.Forms.Frm_Principal
		My.Forms.Frm_Consulta_Mapas.Visible = True
	End Sub

End Class

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Zarino, te confesso que não conheço o código, essa parte pata alteração de imagem.

 

Você pode postar a parte do código que chama a função e o que mais for necessário para que ela funcione para eu tentar reproduzir aqui e achar algo que te ajude por favor.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.