Wie bring ich Systemzeit (Datum und Uhrzeit) in ein label bzw. textfeld?
-
Hallo,
Wie bring ich am besten Uhrzeit und Datum auf ein Fenster, die sekunden sollten jedoch auch noch mitlaufen.
Geht das ohne aufwendige timer ?

-
Class CTime
In einer Schleife aufrufen und ausgeben
-
Bitte für Anfänger

-
Mit CTime::GetCurrentTime() bekommst du die aktuelle Uhrzeit und das Datum.
[url]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmfc98/html/_mfc_ctime.asp [/url]Aber wieso unbedingt ohne Timer ?
Sicher das mit der Schleife geht auch, aber dann hängt doch der Rest vom Programm, oder nicht. (ohne Threads).Schau mal in die FAQ zum Thema Timer.

-
Mit einem Timer geht es am einfachsten.
Zeichne ein Staticfeld und gieb im über den Klassenassistenten den Namen m_zeit für eine CStringvariable.
Mit dem Klassenassistent erstellst du die Funktion für die WM_TIMER.in Menü unter Ansicht->Ressourcensymbole klikst du auf neu und vergibst die Ressourcennummer und Name (Beides wählbar, bei mir Nr = 101,Name = IDT_ZEIT).
Dann mach folgendes:
//in der .cpp in OnInitalise SetTimer(IDC_CLOCK_TIMER,1000,NULL);//Startet jede Sekunde die Timer-Funktion //in der OnTimer() void CUhrDlg::OnTimer(UINT nIDEvent) { if(nIDEvent == IDT_ZEIT) { CTime time = time.GetCurrentTime(); CString str; str.Format("%2d:%2d:%2d am %2d.%2d.%4d",time.GetHour(), time.GetMinute(), time.GetSecond(), time.GetDay(), time.GetMonth(), time.GetYear()); m_zeit = str;//m_zeit ist von einem Static UpdateData(FALSE); } CDialog::OnTimer(nIDEvent); }Fertig!

-
ok danke hat mir geholfen!