Jump to content

Guardar valores


Go to solution Solved by jpaulino,

Recommended Posts

Posted

Boas pessoal, estou a trabalhar num projecto o qual já me trouxe algumas dúvidas e que as tenho colocado aqui.

Agora surgiu-me um pequeno problema...

Eu tenho um form onde tenho 3 textbox e um botão...

O que pretendo é criar neste form uma espécie de menu configurações...

Nestes textbox's pretendo atribuir valores e guarda-los utlizando o botão, para depois utilizar esses valores em várias partes do projecto.

Como posso guardar esses valores?

Também gostava de os guardar e quando acede-se novamente ao form puder alterar e guardar outra vez substituindo os antigos valores.

Existe maneira de o fazer sem ser necessário uma bd?

Sei que com uma bd consigo fazê-lo, mas isso iria tornar o programa mais pesado e mais um recurso utilizado... certo?

Obrigado desde já pela vossa ajuda 😉

Posted

Boas, estou aqui com um problema.

Estava tudo a funcionar na perfeição, testei muitas vezes e estava tudo a funcionar.

Até que continuei a desenvolver e nunca mais me preocupei até agora que decidi compilar e fui acertar os cambios e dei com o erro...

O que acontece é que eu defino um valor e quando saiu do form e volto a entrar (mesmo sem sair da aplicação) os valores estão novamente os default.

Devo ter feito algum problema aqui no meio do código, mas deixo-vos aqui o código do salvar que em principio será daqui...

Public Class Form3
   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    'Gravar valores dos cambios kuanza
    If Label3.Text = "Kuanza" Then
	    With My.Settings
		    .dolar1 = TextBox2.Text
		    .euro1 = TextBox1.Text
		    .Save()
	    End With

	    'Gravar valores dos cambios dolar
    ElseIf Label3.Text = "Dólar" Then
	    With My.Settings
		    .euro = TextBox2.Text
		    .kuanza = TextBox1.Text
		    .Save()
	    End With

	    'Gravar valores dos cambios euro
    ElseIf Label3.Text = "Euro" Then
	    With My.Settings
		    .dolar2 = TextBox2.Text
		    .kuanza2 = TextBox1.Text
		    .Save()
	    End With

    End If
    Close()
    Form1.Show()
    Form1.eurocheck.Enabled = True
    Form1.kuanzacheck.Enabled = True
    Form1.dolarcheck.Enabled = True
   End Sub
End Class

Alguém me consegue dar uma ajuda?

Cumprimentos

Posted (edited)

Já fiz as alterações... e continua a não dar.

Mas mesmo da outra forma chegou a funcionar, mas agora é que falhou :S

O código parece me igual, agora será que com outra instrução noutra parte do programa posso estar a criar algum conflito no save?

Edit1: O consultar os valores está certo... fui aos settings e alterei lá os valores e fez bem o cambio com os novos valores default...

Portanto o problema está no gravar :S

Edited by D3POD
Posted

Ui espera... em lado nenhum :S

Eu tenho o código como coloquei a cima... agora com as alterações que falas-te.

Mas já funcionou como está a cima...

Mas não defini nenhum sitio onde gravar os dados... pois no tutorial apenas diz para Abrir o Visual Studio (eu uso o 2008) > Project > Application Properties > Settings

eu fui a esta opção e coloquei o que pretendia e depois mencionei no botão save e no converter (onde utilizo os valores)...

Posted (edited)

lol eu disse que já funcinou, mas foi da outra maneira 😛 Mas deixou de dar...

O que estou a tentar explicar é que consegui com o tutorial por a funcionar mas agora deixou de fazer o .save.

Vou colocar o código que tenho:

Public Class Form3
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
	'Gravar valores dos cambios kuanza
	If Form1.kuanzacheck.Checked = True Then
		With My.Settings
			TextBox2.Text = My.Settings.dolar1
			TextBox1.Text = My.Settings.euro1
			.Save()
		End With

		'Gravar valores dos cambios dolar
	ElseIf Form1.dolarcheck.Checked = True Then
		With My.Settings
			TextBox2.Text = My.Settings.euro
			TextBox1.Text = My.Settings.kuanza
			.Save()
		End With

		'Gravar valores dos cambios euro
	ElseIf Form1.eurocheck.Checked = True Then
		With My.Settings
			TextBox2.Text = My.Settings.dolar2
			TextBox1.Text = My.Settings.kuanza2
			.Save()
		End With

	End If
	Me.Close()
	Form1.Show()
	Form1.eurocheck.Enabled = True
	Form1.kuanzacheck.Enabled = True
	Form1.dolarcheck.Enabled = True
End Sub
End Class

Este é o código todo do form onde tenho o .save

Isto deve ser uma coisa básica, mas estou a dar com a cabeça num 8 😛

Obrigado 😉

Edited by Caça
Posted (edited)

Pois não funciona mesmo...

Sei que não funciona porque antes colocava os valores e fazia gravar... quando lá voltava estava então os valores que coloquei por ultimos.

Agora deixou de fazer...

Eu não mostro os valores, basta lá voltar 😉

Se realmente fica-se gravado, eu ao ir ao settings devia ver lá os valores novos certo?

Por exemplo (acho que é isto que queres ver) para ir para o tal form onde coloco os valores uso isto...

Private Sub DólarToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DólarToolStripMenuItem.Click
	Form3.Label1.Text = "Kuanza"
	Form3.Label2.Text = "Euro"
	Form3.Label3.Text = "Conversão para Dólar"
	With My.Settings
		Form3.TextBox1.Text = .kuanza
		Form3.TextBox2.Text = .euro
	End With
	dolarcheck.Checked = False
	Form3.Show()
End Sub

Este é referente apenas ao euro... mas tenho mais dois ToolStripMenuItem para os dolares e para os kuanzas...

Edited by Caça
Posted

Uma vez que ninguém me sabe ajudar com este problema no my.settings, será que há outra maneira?

Eu ainda não consegui entender o que é que não trabalha !!!! Ainda não disseste isso claramente.

Posted

Não guarda os valores...

Quando eu coloco os valores e faço guardar esses novos valores deveriam ficar guardados para quando eu os utilizar para converter as moedas ele fazer as contas com esses valores.

Mas não está a acontecer... ele não guarda os valores e fica sempre os valores que introduzi na tabela dos settings

Posted

Estás a fazer qualquer coisa mal de certeza!

Faz o seguinte teste:

1 - Cria um novo form

2 - Cria um novo setting com o nome "teste", com o tipo "string" e scope "user"

3 - Adiciona dois botões com os nomes btnGravaValor e btnMostraValor

4 - Usa este código e testa:

Public Class Form1

Private Sub btnGravaValor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGravaValor.Click
   My.Settings.teste = Now.ToString
  My.Settings.Save()
End Sub

Private Sub btnMostraValor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostraValor.Click
  MessageBox.Show(My.Settings.teste)
End Sub

End Class
Posted

Boas, com o que me pedis-te ao visualizar montra-me a data... ou seja grava o valor Data e Hora... e grava bem... porque se repetir o processo os segundos e minutos variam...

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
×
×
  • Create New...

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.