Ir para o conteúdo
scrapy

Countdown para ficheiro .txt

Mensagens Recomendadas

scrapy

Estou aqui a fazer umas brincadeiras no vb 2008, mas estou com uma dúvida.

Basicamente quero que quando carregar num botão, o programa vá fazendo countdown (de 7min) para um ficheiro .txt (ficheiro este, já existente), ou seja que de segundo a segundo atualize este ficheiro .txt

Um dos problemas que estou a ter é ficar no formato mm:ss

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
nelsonr

Boas,

sendo VB.NET, devia estar nesta secção:

http://www.portugal-a-programar.pt/forum/112-visual-basic-net/

Em relação à questão, podes adicionar um timer e no evento tick abres o ficheiro e adicionas o que pretendes.

No ficheiro é para ficar o que exactamente?

07:00

06:59

06:58, etc?

Ou substitui sempre o conteúdo pelo tempo que falta?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
scrapy

Peço desculpa se postei na secção errada, no ficheiro quero que o texto substitua segundo a segundo, ou seja de maneira que só fique um valor.

Pelo que sei, para ficar no formato mm:ss vou ter de criar dois timers, um para os minutos e outro para os segundos, estou a pensar bem ?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
nelsonr

Boas,

assim por alto podes fazer:

Adicionas um Timer ao form, com o intervalo de 1000 (1 segundo)

Public Class Form1
' Adicionas uma variavel global que vai conter a data/hora do fim
Dim EndDateTime As DateTime

' No page_load, defines que a hora de terminar é daqui a 7 minutos e activas o timer
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
	EndDateTime = DateTime.Now.AddMinutes(7)
	Timer1.Enabled = True
End Sub

' No evento do tick do timer
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
	'  Guardas quanto tempo ainda falta para chegar à data/hora final
	Dim diffDateTime As TimeSpan = EndDateTime - DateTime.Now

	' Abres o ficheiro
	Dim sw As New System.IO.StreamWriter("ficheiro.txt")
	' Se já acabou o tempo
	If diffDateTime.TotalSeconds <= 0 Then
	   ' Guardas 00:00 para indicar que acabou
		sw.Write("00:00")
		' Desligas o timer
		Timer1.Enabled = False
	Else
		' Se ainda não terminou, guardas o tempo que ainda falta
		sw.Write(String.Format("{0:00}:{1:00}", diffDateTime.Minutes, diffDateTime.Seconds))
	End If
	' Fechas a ligação ao ficheiro
	sw.Close()
End Sub

End Class

  • Voto 1

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
scrapy

Funcionou perfeitamente, e obrigado pelos comentários no código, faz com que quem perceba pouco (como é o meu caso) perceba passo a passo.

Muito obrigado pela rápida ajuda.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.