Urlaubs Timer programmieren?

  • VB.NET

Es gibt 13 Antworten in diesem Thema. Der letzte Beitrag () ist von SystemFiles.

    Urlaubs Timer programmieren?

    Hi Leute,

    Ich bin komplett neu hie rund hoffe dass ich das richtige Unterforum erwischt habe.
    Ja, ich weiß auch dass mir hier keiner direkt einen kompletten Source code geben wird aber das möchte ich auch gar nicht,
    will das ja alleine schaffen :)
    Also zu meiner FragE:
    Ich fahre an einem bestimmten Tag in den Urlaub und möchte jetzt ein "Programm" (in VB) machen dass mir praktisch die Tage "runterzählt".
    Bzw. in dem ich einstellen kann ob mir das in Tagen, Stunden, Minuten oder Sekunden angezeigt wird.

    Jetzt das Problem: Ich hab absolut 0 Plan wie oder wo ich da ansetzen soll. Hier mal ein bild wie ich mir das vorgestellt habe:

    picload.org/image/rglciwog/unbenannt.jpg

    Bin euch für jede Hilfe dankbar. :)
    Sprache ist Visual basic.

    Grüße,
    SystemFiles
    Die Differenz zwischen 2 Datevariabeln (Jetzt und Urlaubsbeginn) ist eine TimeSpan.
    Eine TimeSpan kann z.B. mit .Minutes oder .Days in dem gewünschten Format angegeben werden.

    Die Auswahl könntest du über ein Select case lösen.

    Die Anzeige könnte entweder im Form.load oder über einen Timer realisiert werden.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    Du dir die Differenz zwischen den zwei Daten (hoffentlich die Mehrzahl von Datum ?( ) ja ausrechnen undzwar einfach mit: (als simpler Einzeiler)

    VB.NET-Quellcode

    1. (EndDate - StartDate).TotalDays

    Dabei ist EndDate, und StartDate ein DateTime-Objekt.
    Dadurch erhälst du die Tage. Es gibt aber noch andere Methoden wie: .TotalHours,.TotalMinutes,.TotalSeconds.
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Dafür brauchst du dann einen Timer (liegt auf im Werkzeugkasten)
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    Und mit dem Timer zeigst du die derzeitige Zeit an: (Intervall 1000)

    VB.NET-Quellcode

    1. lblTest.text = DateTime.Now.ToString("h:mm:ss tt")
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Okay, danke :)
    Ich versuchs dann und geb dann Rückmeldung obs geklappt hat oder nicht :)

    Finds super dass einem hier direkt so schnell geholfen wird :)

    @Gather: Ich mag ja nicht das aktuelle Datum anzeigen lassen sondern die "Verbleibende Zeit" bis zum Urlaub :)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „SystemFiles“ ()

    So, also kurze Rückmeldung:

    Ich habs jetz geschafft dass er runterzählt mit

    Quellcode

    1. Private CountDownFrom As TimeSpan = TimeSpan.FromDays(2)


    aaaaaaaaber ich würde anstelle von

    Quellcode

    1. TimeSpan.FromDays(2)
    gerne ein Datum hernehmen. Einen Code wie "FromDate" gibts ja leider nicht :s

    SystemFiles schrieb:

    Jetz bin ich komplett verwirrt xD


    nafets schrieb:

    Dim Remaining As TimeSpan = New DateTime(2016, 6, 10) - DateTime.Now


    Hier wird eine TimeSpan erstellt, die sich aus deinen Urlaubsdaten (=> New Datetime(Jahr, Monat, Tag, Stunde, Minute, Sekunde)) sowie den jetzigen Zeitdaten errechnet.
    [Urlaubsdaten] minus [jetzige Zeitdaten] => Zeitspanne die zwischen den beiden Daten liegt.

    Mit dieser Zeitspanne kannst du dann weiter arbeiten.

    mfg Acr0most
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:
    Habs jetzt so gemacht:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim TSpan As New TimeSpan
    3. Dim CountDownDT As DateTime = #12/12/2016 7:00:00 PM#
    4. Private Sub Form1_Load(ByVal sender As System.Object,
    5. ByVal e As System.EventArgs) Handles MyBase.Load
    6. Timer1.Start()
    7. If DateTime.Now < CountDownDT Then
    8. Label7.Text = "Countdown bis zum Uuuuuuuurlaub:"
    9. Label8.Text = "12.12.2016, 18.00 Uhr"
    10. Label9.Text = "Noch..."
    11. Me.Text = "CountDown bis Urlaub " &
    12. CStr(CountDownDT)
    13. Else
    14. End If
    15. End Sub
    16. Private Sub Timer1_Tick(ByVal sender As System.Object,
    17. ByVal e As System.EventArgs) Handles Timer1.Tick
    18. TSpan = CountDownDT.Subtract(DateTime.Now)
    19. Label1.Text = CStr(TSpan.Days) & " Tage"
    20. Label2.Text = CStr(TSpan.Hours) & " Stunden"
    21. Label3.Text = CStr(TSpan.Minutes) & " Minuten"
    22. Label4.Text = CStr(TSpan.Seconds) & " Sekunden"
    23. End Sub
    24. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    25. Me.Close()
    26. End Sub
    27. End Class


    Danke euch allen :)
    @SystemFiles wie gesagt...

    VB.NET-Quellcode

    1. (Urlaub - AktuellesDatum).TotalDays
    wäre genauso gegangen, ich meinte nur dass du die aktuelle Zeit mit TimeOfDay bekommst.
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!