Aktuelles Datum in String Speicher und in Eingabefeld ausgeben (Verwirrung)



  • Daten:
    OS: Windows XP
    Compiler/IDE: Visual C++ 6 PRO
    Anwendung: MFC

    -------------------------------------

    Ja... wie die Überschrift schon sagt. Möchte ich gerne das Aktuelle Datum in einem Eingabefeld Ausgeben...

    Ich habe jetzt schon eine ganze Zeit nach einer "Datum Anzeige Funktion" herumgesucht, und auch jede menge gefunden... allerdings sind diese alle Total verschieden.

    Gibt es eine Einfache Möglichkeit meinem m_strEingabefeld das Aktuelle Datum zu verpassen?

    (Wäre nett mit Beispiel)

    Gruß,
    Dino


  • Mod

    m_edtext.SetWindowText(COleDateTime::GetCurrentTime().Format("%x"));
    


  • Klapt...

    Kann man diese auch so umformatieren dass das Datum als dd.mm.yy Angezeigt wird? Im Moment ist es nähmlich mm/dd/yy ...?

    Wäre sehr net wen da noch gerade jemand eine Beispiel geben könnte...

    Gruß,
    Dino

    EDIT:
    SCHON OK.... habe es selber heraus bekommen...

    Danke Nochmal 😉


  • Mod

    Lies mal was zu locale! z.B. setlocale!



  • Wie meinst du das?

    Wen das auf das Datum bezogen ist, dann wollte ich noch gerade meine Lösung Preisgeben falls jemand auch über die Frage Stolpert...

    CString strDatum;
    strDatum = COleDateTime::GetCurrentTime().Format("%d.%m.%y"); //StrDatum erhält = dd.mm.yy
    
    m_strEingabefeld = "Datum: " + strDatum;  // Eingabefeld Ausgabe 'Datum: 04.07.06'
    
    // Bildschirm Aktualisieren
    UpdateData(FALSE);
    

    Gruß.
    Dino



  • CString strDate;
    strDate.Format("Datum: %s", COleDateTime::GetCurrentTime().Format("%d.%m.%y"); //strDate enthält = Datum: dd.mm.yy
    
    m_strEdit = strDate;
    
    UpdateData(FALSE);
    

    😉 Das wäre nen wenig schöner...

    Und wenn man ne EditCtrl Variable hat wäre es:

    CString strDate;
    strDate.Format("Datum: %s", COleDateTime::GetCurrentTime().Format("%d.%m.%y");
    m_wndEdit.SetWindowText(strDate);
    

  • Administrator

    Setz doch vor das CEdit-Steuerelement ein CStatic-Steuerelement mit dem Konstanten Text "Datum:"
    So musst du das nicht im Editfeld extra dazu setzen, wo es dann sogar noch gelöscht werden kann 😉

    Grüssli


  • Mod

    Dino Crisis schrieb:

    Wie meinst du das?

    Du hast ein amerikanisches Format bekommen weil Du setlocale nicht verwendet hast. Mit dieser Funktion kannst Du sagen in welchen nationalen Formaten Du arbeiten möchtest. Wenn dies richtig eingestellt ist liefert die das x-Format das korrekt engestellete Format für das Datum, dass der User auf seinem Windows Rechner erwartet!



  • aha... sehr interessant... werde ich mir Merken...

    @(D)Evil

    Ich weis nicht, ist es den nötig Code immer zu "verkomplizieren"? Nur damit er entsprechen "Schöner" Aussieht?

    Abgesehen davon das ich durch dieses "Komplizierte" System noch nicht durch blicke...

    Nur mal als Frage Beispiel (was nicht zwangsläufig beantwortet werden muss):
    1. Was bedeuten die Punkte 😣 zwischen z. B. strDate.Format ?
    2. Was bedeutet "%s" ?

    @Dravere

    Ich habe nur Eingabefelder gewählt, damit der user den Text Markieren -> Kopieren -> und dann z. B. im Browser Forum Post einfügen kann.

    Wie man ein Textfeld Markierbar und somit Kopierbar, wie in den Massen von Keygens die durch das Inet Schwirren, macht, habe ich noch nicht herausbekommen.

    Gruß,
    Dino



  • Dino Crisis
    Mein Code ist nicht nur schöner als deiner, erst ist auch einfacher...

    1. Was bedeuten die Punkte 😣 zwischen z. B. strDate.Format?

    Ganz stark vereinfacht: Das du die Funktion Format der Klasse CString aufrufst...

    2. Was bedeutet "%s"?

    Das der Wert der va_list ein String ist...

    Ich habe nur Eingabefelder gewählt, damit der user den Text Markieren -> Kopieren -> und dann z. B. im Browser Forum Post einfügen kann.

    Wie man ein Textfeld Markierbar und somit Kopierbar, wie in den Massen von Keygens die durch das Inet Schwirren, macht, habe ich noch nicht herausbekommen.

    Er meint ganz einfach, das du neben dein Edit Ctrl noch ein Static Ctrl machen sollst... das Static Ctrl soll dann einfach "Datum:" darstellen und in das Editfeld packst du dann das Datum 🙂

    Evt. würde ich dein Edit Feld auch auf ReadOnly setzen 😉



  • Sorry... das sollte kein Angriff sein... du hast mit Sicherheit mehr Ahnung als ich...

    Das Eingabefeld auf ReadOnly zu setzten hatte ich mir auch überlegt, aber ich finde es eigentlich recht OK das der User den Ausgabe Text direkt Editieren kann...

    Bei meinem Prog ging es um einen Post Text Generator. Ich bin MOD in einem Board (bungie.de) und die Leute auf die Foren Regeln zu verwarnen war immer ein großes Text editieren. (Name einfügen; Link Einfügen, Betreff, usw...)

    Das habe ich durch das Prog vereinfacht...

    Hier mal zwei Screens:
    http://www.huclan.de/dinocrisis/MODASI/MODasi.jpg
    http://www.huclan.de/dinocrisis/MODASI/MODasiON.jpg

    Jetzt ist mein Bestreben vielleicht etwas einfacher nach zu vollziehen. Hätte ich z. B. setText für das Eingabefeld genommen, dann hätte ich anderen Text per String nicht mehr so einfach hinzufügen können. (oder doch... ich weis nur nicht wie)

    PS: Da steht absichtlich "asi" satt "assi"... Das liegt daran, dass ich Legasthenie habe, und eigentlich nur mit Word "Rechtschreiben" kann.

    Und weil meine Kollegen aus Flax immer meinten mich darauf hinweisen zu müssen, habe ich einfach mal einen Absicht Fehler eingebaut. 🙄

    Das ist aber zu vernachlässigen…

    Gruß,
    Dino


Anmelden zum Antworten