Laden...

Von berechneter Zeit Stunden subtrahieren und anzeigen

Erstellt von beaker vor 7 Jahren Letzter Beitrag vor 7 Jahren 1.436 Views
beaker Themenstarter:in
5 Beiträge seit 2017
vor 7 Jahren
Von berechneter Zeit Stunden subtrahieren und anzeigen

Hallo zusammen

Ich versuche mich grad ein wenig mit Zeitberechnungen. Ich berechne die Arbeitszeit am Morgen und die Arbeitszeit am Nachmittage.

    // Arbeitszeit am Morgen berechnen
            DateTime arbeitsbeginnAM = DateTime.Parse(tbxArbeitsbeginnAM.Text);
            DateTime arbeitsendeAM = DateTime.Parse(tbxArbeitsendeAM.Text);
            TimeSpan arbeitszeitAM = arbeitsendeAM - arbeitsbeginnAM;
            tbxArbeitszeitAM.Text = arbeitszeitAM.TotalHours.ToString();

            // Arbeitszeit am Nachmittag berechnen
            DateTime arbeitsbeginnPM = DateTime.Parse(tbxArbeitsbeginnPM.Text);
            DateTime arbeitsendePM = DateTime.Parse(tbxArbeitsendePM.Text);
            TimeSpan arbeitszeitPM = arbeitsendePM - arbeitsbeginnPM;
            tbxArbeitszeitPM.Text = arbeitszeitPM.TotalHours.ToString();

Dann addiere ich die berechneten Arbeitszeiten zur Tagesarbeitszeit:


            // Tagesarbeitszeit berechnen
            TimeSpan tagesarbeitszeit = arbeitszeitAM + arbeitszeitPM;
            tbxTagesarbeitszeit.Text = tagesarbeitszeit.TotalHours.ToString();

Soweit so gut. Nun möchte ich von der berechneten Tagesarbeitszeit 8.5 Stunden abziehen und das Resultat in ein neues Feld auf dem Form ausgeben. Kann mir mit dem Code jemand auf die Sprünge helfen?

Viele Dank & Grüsse
Beaker

16.833 Beiträge seit 2008
vor 7 Jahren

Dann nimm halt noch ne neue Textbox und füg dort das Resultat ein.
Wo genau ist denn das Problem? 🤔 Erkenne ich in Deinem Text nicht.

Davon abgesehen darfst auch Du in diesem Forum Code-Tags verwenden, wie jeder andere auch.

3.003 Beiträge seit 2006
vor 7 Jahren

TimeSpan.Subtract()


myShinyNewTextbox.Text = tagesarbeitszeit.Subtract(TimeSpan.FromHours(8.5)).ToString();

Außerdem, sobald du das Windows.Forms-Projekt als richtiges Programm und nicht nur zur Ausgabe deiner Tests nutzen möchtest:

Windows Forms Databinding

Schließlich und endlich sind für Anwendungsfälle, wie du einen hast (sprich: "ich probier ein bisschen code aus und brauche nur eine Ausgabe") die sogenannten Unit Tests (Komponententests) perfekt geeignet.

Einführung in die Komponententests

Viel Erfolg beim Lernen!

LaTino

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

beaker Themenstarter:in
5 Beiträge seit 2017
vor 7 Jahren

Ich danke euch für die wertvollen Tipps! Viele Grüsse, beaker