Monstakalender
-
Also bei Datumssachen arbeite ich immer mit COleDateTime das funzt wunderbar.
-
Eh ja was willst denn genau machen? Nur das Datum auslesen, welches der User gerade im Monthcalender selektiert hat?
Dann geht das so mit dem CMonthCalCtrl:
FunktionAuslesen() { CTime time; // Ich sag jetzt m_ctrlCalender ist dein CMonthCalCtrl. if(m_ctrlCalender.GetCurSel(time)) { CString str = time.Format("%d.%m.&Y"); AfxMessageBox("Sie folgendes Datum ausgewählt: " + str, MB_OK, 0); } else { AfxMessageBox("Fehler beim auswählen des Datums!", MB_OK, 0); } }Schau dir dazu vielleicht noch CMonthCalCtrl und CTime in der MSDN an.
Ich wünsch dir noch viel Glück, wenn du die Daten markieren willst. Habe mich damals an dem selber totgequält ^^Grüssli
-
jo also im moment möchte ich die daten nur auslesen wobei es sicher auch praktisch wäre wenn er gleich zu anfang mal das aktuelle datum anzeigen würde!
Ich weiß net warum aber irgendwie zegt er bei mir immer das falsche datum an
er springt da immer hin und her und man erkennt keine logik drinnen 
-
mit SetCurSel kannst doch ein Datum setzen und mit COleDateTime::GetCurrentTime(statische Methode) kannst dir das gerade aktuelle Datum holen, also
m_ctrlCalender.SetCurSel(COleDateTime::GetCurrentTime());
-
Ne ne ich habe schon zum auslesen getcursel genommen aber immer wenn ich drauf klicke zeigt er mit ein datum an und springt dann wo anderes hin!
-
Das ist schwer zu sagen, da es normalerweise funktioniert. So ist es schwer zu helfen. Aber mich erinnert das irgendwie ein Problem das ich in meinen Anfängen hatte. Hast du eine Membervariable irgendwie dem Monatskalender gegeben? Und dann machst du immer UpdateData(FALSE); aber nie UpdateData(TRUE); wodurch er immer zu nem alten Datum zurückspringt? Ist übrigens auch noch eine Möglichkeit zum auslesen des Datums. Du übergibts dem Teil eine Control-Value-Variable. So kannst auch das ausgewählte Datum abrufen, bzw. setzen.
Grüssli ^^
-
Also das hier ist mein Code:
UpdateData(true); CString str; CTime time; if(m_conkal.GetCurSel(time)) { str = time.Format("%d.%m.%Y"); AfxMessageBox("Sie folgendes Datum ausgewählt: " + str, MB_OK, 0); } else { AfxMessageBox("Fehler beim auswählen des Datums!", MB_OK, 0); } ; CString hilf; ofstream datei("erinnerungen"); if(!datei.good()) { MessageBox("Fehler beim Speichern"); } datei << "/n" << str << "***" << m_text; UpdateData(false);
-
Tja ich merke schon ich bin mal wieder mit meinem Problem alleine

-
Schau dir mal das Posting von Dravere genauer an.
Mach mal einen Debug und du siehst was passiert.
-
das soll Konkret was heißen? Hmmm habe die update datas auch schon an andere stellen gepackt!