|
| |

VB.NET - Ein- und Umsteiger| Re: Stopuhr, Problem mit ListBox Items als .txt speichern | |  | | Autor: Manfred X | | Datum: 19.01.16 21:52 |
| In der Dokumentation gibt es zahlreiche Artikel zur
Formatierung u.a. von Datum und Uhrzeit (Standardformate,
benutzerdefinierte Formate, kulturspezifische Formatierung).
Vielleicht ist dieses Beispiel leichter zu verstehen.
Es gibt einen Button, durch den während des Programmlaufs eine
neue Ausgabedatei angefordert werden kann.
Public Class frmStoppUhr
Const Output As String = "C:\daten\measures.csv"
Private MyOutput As String
Private stopwatch As New Stopwatch
Private WithEvents btStartStopp As New Button With _
{.Parent = Me, .Text = "Start"}
Private WithEvents timer1 As New Timer With _
{.Enabled = False, .Interval = 500}
Private WithEvents btNewOutput As New Button With _
{.Parent = Me, .Text = "Neue Ausgabedatei", _
.Top = 210, .Width = 300}
Private _starttime As Date
Private _elapsed As TimeSpan
Dim lblElapsed As New Label With _
{.Parent = Me, .Width = 150, .Left = 150}
Dim _measures As New List(Of String)
Dim bsmeasures As New BindingSource With {.DataSource = _measures}
Dim lstMeasures As New ListBox With {.Parent = Me, _
.Width = 300, .Top = 50, .Height = 150, _
.DataSource = bsmeasures}
Private Sub frmStoppUhr_Load(sender As Object, _
e As System.EventArgs) Handles Me.Load
Me.Size = New Size(310, 270)
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Fixed3D
'Beim Programmstart einen neuen Dateinamen erstellen
MyOutput = GetNewFilename()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles timer1.Tick
lblElapsed.Text = stopwatch.Elapsed.ToString("c")
lblElapsed.Refresh()
End Sub
Private Sub btStartStopp_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles btStartStopp.Click
If stopwatch.IsRunning Then
_elapsed = stopwatch.Elapsed
timer1.Stop()
Me.stopwatch.Stop()
'Start-Uhrzeit und gemessenes Intervall notieren
Dim se As String = _
_starttime.ToString("F") & ";" & _elapsed.ToString("c")
'... in Liste
_measures.Add(se)
bsmeasures.ResetBindings(True)
'... in Datei
IO.File.AppendAllText _
(MyOutput, se & Environment.NewLine)
btStartStopp.Text = "Start"
lblElapsed.Text = ""
stopwatch.Reset()
Else
btStartStopp.Text = "Stop"
_starttime = Date.Now
timer1.Start()
Me.stopwatch.Start()
End If
End Sub
Private Function GetNewFilename() As String
Dim d As String = IO.Path.GetDirectoryName(Output)
Dim f As String = IO.Path.GetFileNameWithoutExtension(Output)
Dim ext As String = IO.Path.GetExtension(Output)
If Not IO.File.Exists(Output) Then Return Output
Dim i As Integer = 1
Dim fi As String = f
Do
i += 1
fi = f & i.ToString
Loop While IO.File.Exists(IO.Path.Combine(d, fi & ext))
Return IO.Path.Combine(d, fi & ext)
End Function
Private Sub btNewOutput_Click(sender As Object, _
e As System.EventArgs) Handles btNewOutput.Click
MyOutput = GetNewFilename()
MessageBox.Show("Ab jetzt werden die Messungen in " & _
Environment.NewLine & _
MyOutput & " geschrieben")
End Sub
End Class |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats sevGraph (VB/VBA) 
Grafische Auswertungen
Präsentieren Sie Ihre Daten mit wenig Aufwand in grafischer Form. sevGraph unterstützt hierbei Balken-, Linien- und Stapel-Diagramme (Stacked Bars), sowie 2D- und 3D-Tortendiagramme und arbeitet vollständig datenbankunabhängig! Weitere Infos
|
| |
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|