Datum auslesen und vergangene Zeit ermitteln & Neues Fenster öffnen durch Klick

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Michael K..

    Datum auslesen und vergangene Zeit ermitteln & Neues Fenster öffnen durch Klick

    Hey,
    ich bin ein ziemlicher Neuling was VB angeht und arbeite nun ein bisschen an kleineren Programmen rum.
    Heute Nacht kam mir die Idee ein "Programm" meiner Freundin zu widmen.
    Layout Erstellung, sowie Einbindung von Buttons und deren Aktionen bekomme ich nun mehr oder weniger hin.
    Warum ich mich hier nun an euch wende ist folgendes,

    ich möchte gerne, dass das Programm auf Klick eines Buttons ein neues kleines Fenster öffnet.
    In diesem Fenster sollte die Zeit stehen wie lange wir bis dato zusammen sind.
    Am Besten bis hin zu den Sekunden, muss aber nicht live sein.
    Es sei denn es ist kein größerer Aufwand das zu schreiben.

    Mein Problem ist, dass ich einfach keine Funktionen dafür finde, ich such die ganze Zeit im Internet und bei vielen Sachen verstehe ich einfach nur Bahnhof.
    Wäre nett wenn mir einer helfen könnte, da ich leider auch noch keine Ansätze habe.

    Ich erwarte auch nicht, dass ihr mir nun einen kompletten Code gibt, sondern nur Ansätze sowie Funktionen wie und womit ich das dann umsetzen kann. :)

    Grüße!
    Willkommen im Forum. :thumbup:
    Das Datum Eurer Begegnung musst Du noch präzisieren, das Format bekommst Du allein raus.
    Dies ist die Rechenvorschrift:

    VB.NET-Quellcode

    1. Dim start As New DateTime(2012, 12, 24, 17, 20, 0)
    2. MessageBox.Show((DateTime.Now - start).ToString)
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hey, danke dir für deine schnelle Antwort.
    Ich habe das ausprobiert und bekomme es nicht hin.
    Dass das Format Jahr, Monat, Tag, Stunde, Minute und Sekunde ist habe ich schon herausgefunden.
    Allerdings kommt am Ende, wenn ich auf den Button klicke eine IP ähnliche Zahlenfolge heraus.

    Was könnte ich falsch gemacht haben?

    Grüße!

    kaz schrieb:

    Was könnte ich falsch gemacht haben?
    In Zeile 5 Deines Codes hast Du ....
    oh Mist, eben ist mir meine Glaskugel runtergefallen. :D
    Am besten, Du postest mal Deinen Code.
    Kopier ihn aus Deinem Projekt in die Zwischenablage, drück auf den [ VB ]-Button und füge ihn ein.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ach entschuldige, klar. :D
    Dann stimmt das doch, war gerade noch ein bisschen mit was anderem beschäftigt, tut mir Leid. :)

    Ist es möglich hinter den einzelnen Zahlen die Bezeichnung einzufügen?
    Habs selbst nicht mehr ausprobiert da ich momentan unterwegs bin. ;)

    Grüße!

    kaz schrieb:

    Ist es möglich hinter den einzelnen Zahlen die Bezeichnung einzufügen?
    Sieh Dir das an:

    VB.NET-Quellcode

    1. Dim start As New DateTime(2012, 12, 24, 17, 20, 0)
    2. Dim diff = DateTime.Now - start
    3. Dim txt = String.Format("{0} Tage, {1} Stunden, {2} Minuten", diff.Days, diff.Hours, diff.Minutes)
    4. MessageBox.Show(txt)
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hier eine veraltete Methode - Funktioniert aber perfekt ;):

    1. Erstelle einen Button
    2. Mit Doppelklick auf den Button kommst du in den Code-Editor
    3. Du willst ein "kleines" Fenster haben. Ich denke mal eine MessageBox. Da brauchst du nichts weiteres tun als sie mit dem Befehl MessageBox.Show("") aufzurufen
    4. Wir wollen aber das Datum dividieren. Wie macht man denn das? Ganz einfach. Man nimmt DateDiff. DateDiff braucht bestimmte Angaben. Diese schreibst du zwischen den Klammern (DateDiff(Hier fehlen noch informationen.)). Wir wollen, dass wir herausbekommen, wie viele Sekunden vom 20.05.2013 bis jetzt vergangen sind. Also schreibt man DateDiff(DateInterval.Second, Convert.ToDateTime("20.05.2013")
    5. Den Wert, den DateDiff zurückgibt fangen wir dann mit der MessageBox ab. Also MessageBox.Show(CStr(DateDiff(DateInterval.Second, Convert.ToDateTime("20.05.2013"), Now)))

    Fertig!