CMonthCalCtrl Sınıfı
Ay takvim denetiminin işlevselliğini kapsüller.
Sözdizimi
class CMonthCalCtrl : public CWnd
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CMonthCalCtrl::CMonthCalCtrl | Bir CMonthCalCtrl nesne oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CMonthCalCtrl::Create | Bir ay takvim denetimi oluşturur ve bunu nesneye CMonthCalCtrl ekler. |
CMonthCalCtrl::GetCalendarBorder | Geçerli ay takvim denetiminin kenarlık genişliğini alır. |
CMonthCalCtrl::GetCalendarCount | Geçerli ay takvim denetiminde görüntülenen takvim sayısını alır. |
CMonthCalCtrl::GetCalendarGridInfo | Geçerli ay takvim denetimi hakkındaki bilgileri alır. |
CMonthCalCtrl::GetCalID | Geçerli ay takvim denetimi için takvim tanımlayıcısını alır. |
CMonthCalCtrl::GetColor | Ay takvim denetiminin belirtilen alanının rengini alır. |
CMonthCalCtrl::GetCurrentView | Geçerli ay takvim denetimi tarafından şu anda görüntülenen görünümü alır. |
CMonthCalCtrl::GetCurSel | Şu anda seçili olan tarih tarafından belirtilen sistem saatini alır. |
CMonthCalCtrl::GetFirstDayOfWeek | Takvimin en soldaki sütununda görüntülenecek haftanın ilk gününü alır. |
CMonthCalCtrl::GetMaxSelCount | Bir ay takvim denetiminde seçilebilen geçerli en fazla gün sayısını alır. |
CMonthCalCtrl::GetMaxTodayWidth | Geçerli ay takvim denetimi için "Bugün" dizesinin en büyük genişliğini alır. |
CMonthCalCtrl::GetMinReqRect | Ay takvim denetiminde tam ayı göstermek için gereken en düşük boyutu alır. |
CMonthCalCtrl::GetMonthDelta | Ay takvim denetimi için kaydırma hızını alır. |
CMonthCalCtrl::GetMonthRange | Bir ay takvim denetiminin görünümünün yüksek ve düşük sınırlarını temsil eden tarih bilgilerini alır. |
CMonthCalCtrl::GetRange | Ay takvim denetiminde ayarlanan geçerli en düşük ve en yüksek tarihleri alır. |
CMonthCalCtrl::GetSelRange | Kullanıcı tarafından seçili olan tarih aralığının üst ve alt sınırlarını temsil eden tarih bilgilerini alır. |
CMonthCalCtrl::GetToday | Ay takvim denetimi için "bugün" olarak belirtilen tarihin tarih bilgilerini alır. |
CMonthCalCtrl::HitTest | Ayın takvim denetiminin hangi bölümünün ekranda belirli bir noktada olduğunu belirler. |
CMonthCalCtrl::IsCenturyView | Geçerli ay takvim denetiminin geçerli görünümünün yüzyıl görünümü olup olmadığını gösterir. |
CMonthCalCtrl::IsDecadeView | Geçerli ay takvim denetiminin geçerli görünümünün on yıllık görünüm olup olmadığını gösterir. |
CMonthCalCtrl::IsMonthView | Geçerli ay takvim denetiminin geçerli görünümünün ay görünümü olup olmadığını gösterir. |
CMonthCalCtrl::IsYearView | Geçerli ay takvim denetiminin geçerli görünümünün yıl görünümü olup olmadığını gösterir. |
CMonthCalCtrl::SetCalendarBorder | Geçerli ay takvim denetiminin kenarlık genişliğini ayarlar. |
CMonthCalCtrl::SetCalendarBorderDefault | Geçerli ay takvim denetiminin kenarlarının varsayılan genişliğini ayarlar. |
CMonthCalCtrl::SetCalID | Geçerli ay takvim denetimi için takvim tanımlayıcısını ayarlar. |
CMonthCalCtrl::SetCenturyView | Geçerli ay takvim denetimini yüzyıl görünümünü görüntüleyecek şekilde ayarlar. |
CMonthCalCtrl::SetColor | Ay takvim denetiminin belirtilen alanının rengini ayarlar. |
CMonthCalCtrl::SetCurrentView | Belirtilen görünümü görüntülemek için geçerli ay takvimi denetimini ayarlar. |
CMonthCalCtrl::SetCurSel | Bir ay takvim denetimi için seçili olan tarihi ayarlar. |
CMonthCalCtrl::SetDayState | Ay takvim denetimindeki günlerin görünümünü ayarlar. |
CMonthCalCtrl::SetDecadeView | Geçerli ay takvim denetimini on yıllık görünüme ayarlar. |
CMonthCalCtrl::SetFirstDayOfWeek | Takvimin en soldaki sütununda görüntülenecek haftanın gününü ayarlar. |
CMonthCalCtrl::SetMaxSelCount | Ay takvim denetiminde seçilebilen en fazla gün sayısını ayarlar. |
CMonthCalCtrl::SetMonthDelta | Ay takvim denetimi için kaydırma hızını ayarlar. |
CMonthCalCtrl::SetMonthView | Geçerli ay takvimi denetimini ay görünümünü görüntüleyecek şekilde ayarlar. |
CMonthCalCtrl::SetRange | Ay takvim denetimi için izin verilen en düşük ve en yüksek tarihleri ayarlar. |
CMonthCalCtrl::SetSelRange | Ay takvimi denetimi seçimini belirli bir tarih aralığına ayarlar. |
CMonthCalCtrl::SetToday | Geçerli günün takvim denetimini ayarlar. |
CMonthCalCtrl::SetYearView | Geçerli ay takvimi denetimini yıl görünümüne ayarlar. |
CMonthCalCtrl::SizeMinReq | Ay takvimi denetimini en az bir aylık boyutuna yeniden boyar. |
CMonthCalCtrl::SizeRectToMin | Geçerli ay takvim denetimi için, belirtilen dikdörtgene sığan tüm takvimleri içerebilen en küçük dikdörtgeni hesaplar. |
Açıklamalar
Ay takvim denetimi, kullanıcıya bir tarih seçebileceği basit bir takvim arabirimi sağlar. Kullanıcı şu şekilde ekranı değiştirebilir:
Aydan aya kaydırma.
Geçerli günü görüntülemek için Bugün metnine tıklama (MCS_NOTODAY stili kullanılmıyorsa).
Açılır menüden bir ay veya yıl seçme.
Ay takvimi denetimini, oluştururken nesneye çeşitli stiller uygulayarak özelleştirebilirsiniz. Bu stiller, Windows SDK'sında Ay Takvimi Denetim Stilleri'nde açıklanmıştır.
Ay takvim denetimi bir aydan fazla görüntüleyebilir ve tarihi kalın düzenleyerek özel günleri (tatiller gibi) gösterebilir.
Ay takvimi denetimini kullanma hakkında daha fazla bilgi için bkz . CMonthCalCtrl kullanma.
Devralma Hiyerarşisi
CMonthCalCtrl
Gereksinimler
Üst bilgi: afxdtctl.h
CMonthCalCtrl::CMonthCalCtrl
Bir CMonthCalCtrl
nesne oluşturur.
CMonthCalCtrl();
Açıklamalar
Nesnesini oluşturmadan sonra çağırmalısınız Create
.
CMonthCalCtrl::Create
Bir ay takvim denetimi oluşturur ve bunu nesneye CMonthCalCtrl
ekler.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
virtual BOOL Create(
DWORD dwStyle,
const POINT& pt,
CWnd* pParentWnd,
UINT nID);
Parametreler
dwStyle
Ay takvim denetimine uygulanan Windows stillerinin birleşimini belirtir. Stiller hakkında daha fazla bilgi için bkz . Windows SDK'sında Ay Takvimi Denetim Stilleri .
Rect
RECT yapısına başvuru. Ay takvimi denetiminin konumunu ve boyutunu içerir.
Pt
Ay takvim denetiminin konumunu tanımlayan BIR POINT yapısına başvuru.
pParentWnd
Ay takvim denetiminin üst penceresi olan bir CWnd nesnesine işaretçi. NULL olmamalıdır.
Nıd
Ay takvimi denetiminin denetim kimliğini belirtir.
Dönüş Değeri
Başlatma başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
İki adımda ay takvimi denetimi oluşturma:
Nesne
CMonthCalCtrl
oluşturmak için CMonthCalCtrl çağrısı yapın.Ay takvim denetimi oluşturan ve bunu nesnesine ekleyen bu üye işlevini çağırın
CMonthCalCtrl
.
çağırdığınızda Create
ortak denetimler başlatılır. Çağrısının Create
sürümü, bunun nasıl boyutlandırılmış olduğunu belirler:
MFC'nin denetimi otomatik olarak bir aya boyutlandırmasını sağlamak için pt parametresini kullanan geçersiz kılmayı çağırın.
Denetimi kendiniz boyutlandırmak için rect parametresini kullanan bu işlevin geçersiz kılmasını çağırın.
Örnek
// Given two member objects m_calCtrl1 and m_calCtrl2, we can
// create them in one of two ways.
// Providing a point has the control with its top-left corner
// at that point and sized automatically to show one month
// page.
CPoint pt(10, 10);
VERIFY(m_calCtrl1.Create(WS_TABSTOP | WS_CHILD | WS_VISIBLE |
WS_BORDER | MCS_DAYSTATE,
pt, this, IDC_MONTHCALCTRL1));
// Providing a rectangle lets us completely control the size.
// The control will paint as many complete month pages in the
// control's area as possible.
CRect rect(300, 100, 470, 200);
VERIFY(m_calCtrl2.Create(WS_TABSTOP | WS_CHILD | WS_VISIBLE |
WS_BORDER | MCS_MULTISELECT,
rect, this, IDC_MONTHCALCTRL2));
CMonthCalCtrl::GetCalendarBorder
Geçerli ay takvim denetiminin kenarlık genişliğini alır.
int GetCalendarBorder() const;
Dönüş Değeri
Denetim kenarlarının piksel cinsinden genişliği.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCALENDARBORDER iletisini gönderir.
CMonthCalCtrl::GetCalendarCount
Geçerli ay takvim denetiminde görüntülenen takvim sayısını alır.
int GetCalendarCount() const;
Dönüş Değeri
Şu anda ay takvim denetiminde görüntülenen takvim sayısı. İzin verilen en fazla takvim sayısı 12'dir.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCALENDARCOUNT iletisini gönderir.
CMonthCalCtrl::GetCalendarGridInfo
Geçerli ay takvim denetimi hakkındaki bilgileri alır.
BOOL GetCalendarGridInfo(PMCGRIDINFO pmcGridInfo) const;
Parametreler
pmcGridInfo
[out] Geçerli ay takvim denetimi hakkında bilgi alan bir MCGRIDINFO yapısının işaretçisi. Çağıran, bu yapıyı ayırıp başlatmakla sorumludur.
Dönüş Değeri
Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCALENDARGRIDINFO iletisini gönderir.
Örnek
İlk kod örneği, m_monthCalCtrl
ay takvimi denetimine program aracılığıyla erişmek için kullanılan değişkenini tanımlar. Bu değişken sonraki örnekte kullanılır.
// Variable used to reference the month calendar control.
CMonthCalCtrl m_monthCalCtrl;
// Variable used to reference the splitbutton control.
CSplitButton m_splitButton;
Sonraki kod örneği, GetCalendarGridInfo
geçerli ay takvim denetiminin görüntülediği takvim tarihini almak için yöntemini kullanır.
WCHAR name[26];
name[0] = _T('\0');
MCGRIDINFO gridInfo;
gridInfo.cbSize = sizeof(MCGRIDINFO);
gridInfo.dwPart = MCGIP_CALENDARHEADER;
gridInfo.dwFlags = MCGIF_NAME;
gridInfo.iCalendar = 0;
gridInfo.pszName = reinterpret_cast<PWSTR>(&name);
gridInfo.cchName = sizeof(name);
m_monthCalCtrl.GetCalendarGridInfo(&gridInfo);
CString str;
CString calendarDate(name);
str.Format(_T("Calendar date: '%s'"), calendarDate);
AfxMessageBox(str, MB_ICONINFORMATION);
CMonthCalCtrl::GetCalID
Geçerli ay takvim denetimi için takvim tanımlayıcısını alır.
CALID GetCalID() const;
Dönüş Değeri
Takvim tanımlayıcı sabitlerinden biri.
Açıklamalar
Takvim tanımlayıcısı, Gregoryen (yerelleştirilmiş), Japonca veya Hicri takvimler gibi bölgeye özgü bir takvimi belirtir. Uygulamanız, çeşitli dil desteği işlevlerine sahip bir takvim tanımlayıcısı kullanabilir.
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCALID iletisini gönderir.
CMonthCalCtrl::GetColor
nRegion tarafından belirtilen ay takvim denetiminin bir alanının rengini alır.
COLORREF GetColor(int nRegion) const;
Parametreler
nBölge
Rengin alındığı ay takvimi denetiminin bölgesi. Değerlerin listesi için bkz. SetColor'ın nRegion parametresi.
Dönüş Değeri
Başarılı olursa ay takvimi denetiminin bölümüyle ilişkili rengi belirten COLORREF değeri. Aksi takdirde, bu üye işlevi -1 döndürür.
CMonthCalCtrl::GetCurrentView
Geçerli ay takvim denetimi tarafından şu anda görüntülenen görünümü alır.
DWORD GetCurrentView() const;
Dönüş Değeri
Geçerli görünüm, aşağıdaki değerlerden biriyle gösterilir:
Değer | Anlamı |
---|---|
MCMV_MONTH | Aylık görünüm |
MCMV_YEAR | Yıllık görünüm |
MCMV_DECADE | On yıllık görünüm |
MCMV_CENTURY | Yüzyıl görünümü |
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCURRENTVIEW iletisini gönderir.
Örnek
İlk kod örneği, m_monthCalCtrl
ay takvimi denetimine program aracılığıyla erişmek için kullanılan değişkenini tanımlar. Bu değişken sonraki örnekte kullanılır.
// Variable used to reference the month calendar control.
CMonthCalCtrl m_monthCalCtrl;
// Variable used to reference the splitbutton control.
CSplitButton m_splitButton;
Sonraki kod örneği, ay takvim denetiminin şu anda görüntülendiği raporları bildirir.
CString str;
CString msg = _T("The current calendar displays %s view.");
DWORD view = m_monthCalCtrl.GetCurrentView();
switch (view)
{
case MCMV_MONTH:
str.Format(msg, _T("month"));
break;
case MCMV_YEAR:
str.Format(msg, _T("year"));
break;
case MCMV_DECADE:
str.Format(msg, _T("decade"));
break;
case MCMV_CENTURY:
str.Format(msg, _T("century"));
break;
default:
str.Format(msg, _T("an unknown"));
break;
}
AfxMessageBox(str, MB_ICONINFORMATION);
CMonthCalCtrl::GetCurSel
Şu anda seçili olan tarih tarafından belirtilen sistem saatini alır.
BOOL GetCurSel(COleDateTime& refDateTime) const; BOOL GetCurSel(CTime& refDateTime) const;
BOOL GetCurSel(LPSYSTEMTIME pDateTime) const;
Parametreler
refDateTime
COleDateTime nesnesine veya CTime nesnesine başvuru. Geçerli saati alır.
pDateTime
O anda seçili olan tarih bilgilerini alacak systemtime yapısının işaretçisi. Bu parametre geçerli bir adres olmalı ve NULL olamaz.
Dönüş Değeri
Başarılı olursa sıfır olmayan; otherwize 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETCURSEL davranışını uygular.
Not
Stil MCS_MULTISELECT ayarlandıysa bu üye işlevi başarısız olur.
MFC'nin uygulamasında GetCurSel
bir COleDateTime
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsiniz.
CMonthCalCtrl::GetFirstDayOfWeek
Takvimin en soldaki sütununda görüntülenecek haftanın ilk gününü alır.
int GetFirstDayOfWeek(BOOL* pbLocal = NULL) const;
Parametreler
pbLocal
BOOL değerinin işaretçisi. Değer sıfır değilse, denetimin ayarı denetim masasındaki ayarla eşleşmiyordur.
Dönüş Değeri
Haftanın ilk gününü temsil eden bir tamsayı değeri. Bu tamsayıların neyi temsil ettiği hakkında daha fazla bilgi için bkz. Açıklamalar.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETFIRSTDAYOFWEEK davranışını uygular. Haftanın günleri aşağıdaki gibi tamsayılar olarak gösterilir.
Değer | Haftanın günü |
---|---|
0 | Pazartesi |
1 | Salı |
2 | Çarşamba |
3 | Perşembe |
4 | Cuma |
5 | Cumartesi |
6 | Pazar |
Örnek
CMonthCalCtrl::SetFirstDayOfWeek örneğine bakın.
CMonthCalCtrl::GetMaxSelCount
Bir ay takvim denetiminde seçilebilen geçerli en fazla gün sayısını alır.
int GetMaxSelCount() const;
Dönüş Değeri
Denetim için seçilebilen toplam gün sayısını temsil eden bir tamsayı değeri.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETMAXSELCOUNT davranışını uygular. MCS_MULTISELECT stil kümesine sahip denetimler için bu üye işlevini kullanın.
Örnek
CMonthCalCtrl::SetMaxSelCount örneğine bakın.
CMonthCalCtrl::GetMaxTodayWidth
Geçerli ay takvim denetimi için "Bugün" dizesinin en büyük genişliğini alır.
DWORD GetMaxTodayWidth() const;
Dönüş Değeri
"Bugün" dizesinin piksel cinsinden genişliği.
Örnek
İlk kod örneği, m_monthCalCtrl
ay takvimi denetimine program aracılığıyla erişmek için kullanılan değişkenini tanımlar. Bu değişken sonraki örnekte kullanılır.
// Variable used to reference the month calendar control.
CMonthCalCtrl m_monthCalCtrl;
// Variable used to reference the splitbutton control.
CSplitButton m_splitButton;
Sonraki kod örneği yöntemini gösterir GetMaxTodayWidth
.
DWORD width = m_monthCalCtrl.GetMaxTodayWidth();
CString str;
str.Format(_T("The maximum today width is %d."), width);
AfxMessageBox(str, MB_ICONINFORMATION);
Açıklamalar
Kullanıcı, ay takvim denetiminin en altında görüntülenen "Bugün" dizesine tıklayarak geçerli tarihe dönebilir. "Bugün" dizesi etiket metnini ve tarih metnini içerir.
Bu yöntem, Windows SDK'sında açıklanan MCM_GETMAXTODAYWIDTH iletisini gönderir.
CMonthCalCtrl::GetMinReqRect
Ay takvim denetiminde tam ayı göstermek için gereken en düşük boyutu alır.
BOOL GetMinReqRect(RECT* pRect) const;
Parametreler
pRect
Sınırlayıcı dikdörtgen bilgilerini alacak rect yapısının işaretçisi. Bu parametre geçerli bir adres olmalı ve NULL olamaz.
Dönüş Değeri
Başarılı olursa, bu üye işlevi sıfırdan farklı bir değer döndürür ve lpRect
ilgili sınırlayıcı bilgileri alır. Başarısız olursa üye işlevi 0 döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETMINREQRECT davranışını uygular.
CMonthCalCtrl::GetMonthDelta
Ay takvim denetimi için kaydırma hızını alır.
int GetMonthDelta() const;
Dönüş Değeri
Ay takvimi denetiminin kaydırma hızı. Kaydırma hızı, kullanıcı bir kaydırma düğmesine bir kez tıkladığında denetimin görünümünü taşıması gereken ay sayısıdır.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETMONTHDELTA davranışını uygular.
CMonthCalCtrl::GetMonthRange
Bir ay takvim denetiminin görünümünün yüksek ve düşük sınırlarını temsil eden tarih bilgilerini alır.
int GetMonthRange(
COleDateTime& refMinRange,
COleDateTime& refMaxRange,
DWORD dwFlags) const;
int GetMonthRange(
CTime& refMinRange,
CTime& refMaxRange,
DWORD dwFlags) const;
int GetMonthRange(
LPSYSTEMTIME pMinRange,
LPSYSTEMTIME pMaxRange,
DWORD dwFlags) const;
Parametreler
refMinRange
İzin verilen en düşük tarihi içeren bir COleDateTime veya CTime nesnesine başvuru.
refMaxRange
İzin verilen en yüksek tarihi içeren veya COleDateTime
CTime
nesnesine başvuru.
pMinRange
Aralığın en alt ucundaki tarihi içeren SYSTEMTIME yapısının işaretçisi.
pMaxRange
Aralığın en üst ucundaki tarihi içeren bir SYSTEMTIME
yapıya yönelik işaretçi.
dwFlags
Alınacak aralık sınırlarının kapsamını belirten değer. Bu değer aşağıdakilerden biri olmalıdır.
Değer | Anlamı |
---|---|
GMR_DAYSTATE | Yalnızca kısmen görüntülenen görünür aralığın önceki ve sondaki aylarını ekleyin. |
GMR_VISIBLE | Yalnızca tamamen görüntülenen ayları ekleyin. |
Dönüş Değeri
İlk ve ikinci sürümlerde refMinRange ve refMaxRange veya üçüncü sürümde pMinRange ve pMaxRange tarafından belirtilen iki sınıra yayılan ay cinsinden aralığı temsil eden bir tamsayı.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETMONTHRANGE davranışını uygular. MFC'nin uygulamasında GetMonthRange
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsinizCOleDateTime
.
Örnek
CMonthCalCtrl::SetDayState örneğine bakın.
CMonthCalCtrl::GetRange
Ay takvim denetiminde ayarlanan geçerli en düşük ve en yüksek tarihleri alır.
DWORD GetRange(
COleDateTime* pMinRange,
COleDateTime* pMaxRange) const;
DWORD GetRange(
CTime* pMinRange,
CTime* pMaxRange) const;
DWORD GetRange(
LPSYSTEMTIME pMinRange,
LPSYSTEMTIME pMaxRange) const;
Parametreler
pMinRange
Aralığın en alt ucundaki tarihi içeren bir COleDateTime
CTime
nesne, nesne veya SYSTEMTIME yapısının işaretçisi.
pMaxRange
Aralığın en üst ucundaki tarihi içeren bir COleDateTime
CTime
nesneye, nesneye veya SYSTEMTIME yapısına yönelik bir işaretçi.
Dönüş Değeri
Sıfır (sınır ayarlanmadı) veya sınır bilgilerini belirten aşağıdaki değerlerin birleşimi olabilecek bir DWORD.
Değer | Anlamı |
---|---|
GDTR_MAX | Denetim için bir üst sınır ayarlanır; pMaxRange geçerli ve geçerli tarih bilgilerini içerir. |
GDTR_MIN | Denetim için en düşük sınır ayarlanır; pMinRange geçerli ve geçerli tarih bilgilerini içerir. |
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETRANGE davranışını uygular. MFC'nin uygulamasında GetRange
bir COleDateTime
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsiniz.
Örnek
// This code fragment sets a variety of ranges in the
// control, and calls a separate function to show the
// set range to the user.
void CMonthCalDlg::OnBnClickedRangebutton()
{
// set minimum of January 1st, 1995 with no maximum
COleDateTime dtMin;
COleDateTime dtMax;
dtMin = COleDateTime(1995, 1, 1, 0, 0, 0);
dtMax.SetStatus(COleDateTime::null);
m_calCtrl1.SetRange(&dtMin, &dtMax);
ShowRange(&m_calCtrl1);
// set no minimum and a maximum of September 30th, 1997
dtMin.SetStatus(COleDateTime::null);
dtMax = COleDateTime(1997, 9, 30, 0, 0, 0);
m_calCtrl1.SetRange(&dtMin, &dtMax);
ShowRange(&m_calCtrl1);
// set minimum of April 15, 1992 and maximum of June 5, 2002
dtMin = COleDateTime(1992, 4, 15, 0, 0, 0);
dtMax = COleDateTime(2002, 6, 5, 0, 0, 0);
m_calCtrl1.SetRange(&dtMin, &dtMax);
ShowRange(&m_calCtrl1);
}
void CMonthCalDlg::ShowRange(CMonthCalCtrl *pMoCalCtrl)
{
ASSERT(pMoCalCtrl != NULL);
CString strMessage;
COleDateTime dtMinimum;
COleDateTime dtMaximum;
// Get the range
DWORD dwResult = pMoCalCtrl->GetRange(&dtMinimum, &dtMaximum);
// If a minimum was specified, format it
// otherwise, indicate that there is no lower bound
if (dwResult & GDTR_MIN)
strMessage += dtMinimum.Format(_T("Minimum range is %x %X.\r\n"));
else
strMessage += _T("No minimum range.\r\n");
// Treat maximum similarly
if (dwResult & GDTR_MAX)
strMessage += dtMaximum.Format(_T("Maximum range is %x %X.\r\n"));
else
strMessage += _T("No maximum range.\r\n");
// Show the user
AfxMessageBox(strMessage);
}
CMonthCalCtrl::GetSelRange
Kullanıcı tarafından seçili olan tarih aralığının üst ve alt sınırlarını temsil eden tarih bilgilerini alır.
BOOL GetSelRange(
COleDateTime& refMinRange,
COleDateTime& refMaxRange) const;
BOOL GetSelRange(
CTime& refMinRange,
CTime& refMaxRange) const;
BOOL GetSelRange(
LPSYSTEMTIME pMinRange,
LPSYSTEMTIME pMaxRange) const;
Parametreler
refMinRange
İzin verilen en düşük tarihi içeren bir COleDateTime veya CTime nesnesine başvuru.
refMaxRange
İzin verilen en yüksek tarihi içeren veya COleDateTime
CTime
nesnesine başvuru.
pMinRange
Aralığın en alt ucundaki tarihi içeren SYSTEMTIME yapısının işaretçisi.
pMaxRange
Aralığın en üst ucundaki tarihi içeren bir SYSTEMTIME
yapıya yönelik işaretçi.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETSELRANGE davranışını uygular. GetSelRange
MCS_MULTISELECT stilini kullanmayan bir ay takvim denetimine uygulandığında başarısız olur.
MFC'nin uygulamasında GetSelRange
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsinizCOleDateTime
.
CMonthCalCtrl::GetToday
Ay takvim denetimi için "bugün" olarak belirtilen tarihin tarih bilgilerini alır.
BOOL GetToday(COleDateTime& refDateTime) const; BOOL GetToday(COleDateTime& refDateTime) const;
BOOL GetToday(LPSYSTEMTIME pDateTime) const;
Parametreler
refDateTime
Geçerli günü gösteren bir COleDateTime veya CTime nesnesine başvuru.
pDateTime
Tarih bilgilerini alacak systemtime yapısının işaretçisi. Bu parametre geçerli bir adres olmalı ve NULL olamaz.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_GETTODAY davranışını uygular. MFC'nin uygulamasında GetToday
bir COleDateTime
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsiniz.
Örnek
void CMonthCalDlg::OnBnClickedGettodaybutton()
{
COleDateTime timeToday;
if (m_calCtrl1.GetToday(timeToday))
{
// Format the date information from the value we received
// and post a message box about it.
CString str = timeToday.Format(VAR_DATEVALUEONLY);
AfxMessageBox(str);
// Set the control's "today" indicator to be five
// days previous.
timeToday -= 5;
m_calCtrl1.SetToday(timeToday);
}
else
{
// Something is wrong!
ASSERT(FALSE);
}
}
CMonthCalCtrl::HitTest
Varsa, hangi ay takvimi denetiminin belirtilen konumda olduğunu belirler.
DWORD HitTest(PMCHITTESTINFO pMCHitTest);
Parametreler
pMCHitTest
Ay takvim denetimi için isabet testi noktalarını içeren bir MCHITTESTINFO yapısına yönelik bir işaretçi.
Dönüş Değeri
DWORD değeri. Yapının uHit üyesine MCHITTESTINFO
eşittir.
Açıklamalar
HitTest
MCHITTESTINFO
, isabet testi hakkında bilgi içeren yapısını kullanır.
CMonthCalCtrl::IsCenturyView
Geçerli ay takvim denetiminin geçerli görünümünün yüzyıl görünümü olup olmadığını gösterir.
BOOL IsCenturyView() const;
Dönüş Değeri
Geçerli görünüm yüzyıl görünümü ise DOĞRU; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCURRENTVIEW iletisini gönderir. Bu ileti MCMV_CENTURY döndürürse, bu yöntem TRUE döndürür.
CMonthCalCtrl::IsDecadeView
Geçerli ay takvim denetiminin geçerli görünümünün on yıllık görünüm olup olmadığını gösterir.
BOOL IsDecadeView() const;
Dönüş Değeri
Geçerli görünüm on yıllık görünüm ise DOĞRU; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCURRENTVIEW iletisini gönderir. Bu ileti MCMV_DECADE döndürürse, bu yöntem TRUE döndürür.
CMonthCalCtrl::IsMonthView
Geçerli ay takvim denetiminin geçerli görünümünün ay görünümü olup olmadığını gösterir.
BOOL IsMonthView() const;
Dönüş Değeri
Geçerli görünüm ay görünümüyse DOĞRU; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCURRENTVIEW iletisini gönderir. Bu ileti MCMV_MONTH döndürürse, bu yöntem TRUE döndürür.
CMonthCalCtrl::IsYearView
Geçerli ay takvim denetiminin geçerli görünümünün yıl görünümü olup olmadığını gösterir.
BOOL IsYearView() const;
Dönüş Değeri
Geçerli görünüm yıl görünümüyse DOĞRU; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_GETCURRENTVIEW iletisini gönderir. Bu ileti MCMV_YEAR döndürürse, bu yöntem TRUE döndürür.
CMonthCalCtrl::SetCalendarBorder
Geçerli ay takvim denetiminin kenarlık genişliğini ayarlar.
void SetCalendarBorder(int cxyBorder);
Parametreler
cxyBorder
[in] Piksel cinsinden kenarlık genişliği.
Açıklamalar
Bu yöntem başarılı olursa, kenarlık genişliği cxyBorder parametresine ayarlanır. Aksi takdirde, kenarlık genişliği geçerli tema tarafından belirtilen varsayılan değere sıfırlanır veya temalar kullanılmazsa sıfırlanır.
Bu yöntem, Windows SDK'sında açıklanan MCM_SETCALENDARBORDER iletisini gönderir.
Örnek
İlk kod örneği, m_monthCalCtrl
ay takvimi denetimine program aracılığıyla erişmek için kullanılan değişkenini tanımlar. Bu değişken sonraki örnekte kullanılır.
// Variable used to reference the month calendar control.
CMonthCalCtrl m_monthCalCtrl;
// Variable used to reference the splitbutton control.
CSplitButton m_splitButton;
Sonraki kod örneği, ay takvimi denetiminin kenarlık genişliğini sekiz piksel olarak ayarlar. Bu yöntemin başarılı olup olmadığını belirlemek için CMonthCalCtrl::GetCalendarBorder yöntemini kullanın.
// Use the GetCalendarBorder() method to determine whether
// this method succeeded or failed.
m_monthCalCtrl.SetCalendarBorder(8);
CMonthCalCtrl::SetCalendarBorderDefault
Geçerli ay takvim denetiminin kenarlarının varsayılan genişliğini ayarlar.
void SetCalendarBorderDefault();
Açıklamalar
Kenarlık genişliği geçerli tema tarafından belirtilen varsayılan değere veya temalar kullanılmazsa sıfıra ayarlanır.
Bu yöntem, Windows SDK'sında açıklanan MCM_SETCALENDARBORDER iletisini gönderir.
CMonthCalCtrl::SetCalID
Geçerli ay takvim denetimi için takvim tanımlayıcısını ayarlar.
BOOL SetCalID(CALID calid);
Parametreler
Aytac
[in] Takvim tanımlayıcı sabitlerinden biri.
Dönüş Değeri
Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Takvim tanımlayıcısı, Gregoryen (yerelleştirilmiş), Japonca veya Hicri takvimler gibi bölgeye özgü bir takvim belirtir. SetCalID
Takvimi içeren yerel ayar bilgisayarınızda yüklüyse calid parametresi tarafından belirtilen bir takvimi görüntülemek için yöntemini kullanın.
Bu yöntem, Windows SDK'sında açıklanan MCM_SETCALID iletisini gönderir.
Örnek
İlk kod örneği, m_monthCalCtrl
ay takvimi denetimine program aracılığıyla erişmek için kullanılan değişkenini tanımlar. Bu değişken sonraki örnekte kullanılır.
// Variable used to reference the month calendar control.
CMonthCalCtrl m_monthCalCtrl;
// Variable used to reference the splitbutton control.
CSplitButton m_splitButton;
Sonraki kod örneği, Japon İmparator Dönemi takvimini görüntülemek için ay takvimi denetimini ayarlar. Yöntemin SetCalID
başarılı olması için bu takvimin bilgisayarınızda yüklü olması gerekir.
BOOL rc = m_monthCalCtrl.SetCalID(CAL_JAPAN);
CString str = _T("Calendar change ");
;
if (rc == TRUE)
str += _T("succeeded.");
else
{
str += _T("failed.\n");
str += _T("Perhaps this locale is not installed.");
}
AfxMessageBox(str, MB_ICONINFORMATION);
CMonthCalCtrl::SetCenturyView
Geçerli ay takvim denetimini yüzyıl görünümünü görüntüleyecek şekilde ayarlar.
BOOL SetCenturyView();
Dönüş Değeri
Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, CMonthCalCtrl::SetCurrentView yöntemini kullanarak görünümü century görünümünü temsil eden olarak MCMV_CENTURY
ayarlar.
CMonthCalCtrl::SetColor
Ay takvim denetiminin belirtilen alanının rengini ayarlar.
COLORREF SetColor(
int nRegion,
COLORREF ref);
Parametreler
nBölge
Ayarlanacağı ay takvimi rengini belirten bir tamsayı değeri. Bu değer aşağıdakilerden biri olabilir.
Değer | Anlamı |
---|---|
MCSC_BACKGROUND | Aylar arasında görüntülenen arka plan rengi. |
MCSC_MONTHBK | Ay içinde görüntülenen arka plan rengi. |
MCSC_TEXT | Bir ay içinde metin görüntülemek için kullanılan renk. |
MCSC_TITLEBK | Takvimin başlığında görüntülenen arka plan rengi. |
MCSC_TITLETEXT | Takvimin başlığındaki metni görüntülemek için kullanılan renk. |
MCSC_TRAILINGTEXT | Üst bilgi ve sondaki gün metnini görüntülemek için kullanılan renk. Üst bilgi ve sondaki günler, geçerli takvimde görünen önceki ve sonraki aylara ait günlerdir. |
ref
Ay takvim denetiminin belirtilen bölümü için yeni renk ayarı için COLORREF değeri.
Dönüş Değeri
Başarılı olursa, ay takvimi denetiminin belirtilen bölümü için önceki renk ayarını temsil eden COLORREF değeri. Aksi takdirde bu ileti -1 döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETCOLOR davranışını uygular.
Örnek
// Set colors for title text and title background to match
// the Control Panel settings for inactive window captions.
m_calCtrl1.SetColor(MCSC_TITLETEXT, ::GetSysColor(COLOR_INACTIVECAPTIONTEXT));
m_calCtrl1.SetColor(MCSC_TITLEBK, ::GetSysColor(COLOR_INACTIVECAPTION));
CMonthCalCtrl::SetCurrentView
Belirtilen görünümü görüntülemek için geçerli ay takvimi denetimini ayarlar.
BOOL SetCurrentView(DWORD dwNewView);
Parametreler
dwNewView
[in] Aylık, yıllık, on yıllık veya yüzyıl görünümünü belirten aşağıdaki değerlerden biri.
MCMV_MONTH
: Aylık görünümMCMV_YEAR
: Yıllık görünümMCMV_DECADE
: On yıllık görünümMCMV_CENTURY
: Yüzyıl görünümü
Dönüş Değeri
Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan MCM_SETCURRENTVIEW iletisini gönderir.
CMonthCalCtrl::SetCurSel
Bir ay takvim denetimi için seçili olan tarihi ayarlar.
BOOL SetCurSel(const COleDateTime& refDateTime);
BOOL SetCurSel(const CTime& refDateTime);
BOOL SetCurSel(const LPSYSTEMTIME pDateTime);
Parametreler
refDateTime
Seçili durumdaki ay takvimi denetimini gösteren bir COleDateTime veya CTime nesnesine başvuru.
pDateTime
Geçerli seçim olarak ayarlanacak tarihi içeren systemtime yapısının işaretçisi.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETCURSEL davranışını uygular. MFC'nin uygulamasında SetCurSel
bir COleDateTime
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsiniz.
Örnek
void CMonthCalDlg::OnBnClickedCurselbutton()
{
// All of these calls set the current selection to March 15, 1998.
// with a COleDateTime
COleDateTime dt1(1998, 3, 15, 0, 0, 0);
m_calCtrl1.SetCurSel(dt1);
// with a CTime
CTime dt2(1998, 3, 15, 0, 0, 0);
m_calCtrl1.SetCurSel(dt2);
// with a SYSTEMTIME structure
SYSTEMTIME sysTime;
// set everything to zero
memset(&sysTime, 0, sizeof(sysTime));
// except for the date we want
sysTime.wYear = 1998;
sysTime.wMonth = 3;
sysTime.wDay = 15;
m_calCtrl1.SetCurSel(&sysTime);
}
CMonthCalCtrl::SetDayState
Ay takvim denetimindeki günlerin görünümünü ayarlar.
BOOL SetDayState(
int nMonths,
LPMONTHDAYSTATE pStates);
Parametreler
nMonths
pStates'in işaret olduğu dizide kaç öğe olduğunu gösteren değer.
pStates
Ay takvimi denetiminin her gün kendi ekranında nasıl çizeceğini tanımlayan monthDAYSTATE değer dizisine yönelik bir işaretçi. MONTHDAYSTATE veri türü, her bitin (1 ile 31) bir ayın gününün durumunu temsil ettiği bir bit alanıdır. Bir bit açıksa ilgili gün kalın olarak görüntülenir; aksi takdirde vurgu olmadan görüntülenir.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETDAYSTATE davranışını uygular.
Örnek
void CMonthCalDlg::OnBnClickedDaystatebutton()
{
// First, we must find the visible range. The array we pass to the
// SetDayState() function must be large enough to hold days for all
// of the visible months. Even if a month is _partially_ visible,
// we must have MONTHDAYSTATE data for it in the array we pass.
// GetMonthRange() returns the range of days currently visible in
// the control, along with a count of visible months. This array
// will be up to 2 months larger than the number of "pages" visible
// in the control.
SYSTEMTIME timeFrom;
SYSTEMTIME timeUntil;
int nCount = m_calCtrl1.GetMonthRange(&timeFrom, &timeUntil, GMR_DAYSTATE);
// Allocate the state array based on the return value.
LPMONTHDAYSTATE pDayState;
pDayState = new MONTHDAYSTATE[nCount];
memset(pDayState, 0, sizeof(MONTHDAYSTATE) * nCount);
// Find the first fully visible month.
int nIndex = (timeFrom.wDay == 1) ? 0 : 1;
// Set the 4th day, 19th day, and 26th day of the first
// _fully_ visible month as bold.
pDayState[nIndex] |= 1 << 3; // 4th day
pDayState[nIndex] |= 1 << 18; // 19th day
pDayState[nIndex] |= 1 << 25; // 25th day
// Set state and clean up
VERIFY(m_calCtrl1.SetDayState(nCount, pDayState));
delete[] pDayState;
}
CMonthCalCtrl::SetDecadeView
Geçerli ay takvim denetimini on yıllık görünüme ayarlar.
BOOL SetDecadeView();
Dönüş Değeri
Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, görünümü on yıllık görünümü MCMV_DECADE
temsil eden olarak ayarlamak için CMonthCalCtrl::SetCurrentView yöntemini kullanır.
CMonthCalCtrl::SetFirstDayOfWeek
Takvimin en soldaki sütununda görüntülenecek haftanın gününü ayarlar.
BOOL SetFirstDayOfWeek(
int iDay,
int* lpnOld = NULL);
Parametreler
iDay
Hangi günün haftanın ilk günü olarak ayarlandığını gösteren bir tamsayı değeri. Bu değer, gün sayılarından biri olmalıdır. Gün numaralarının açıklaması için bkz . GetFirstDayOfWeek .
lpnOld
Daha önce ayarlanan haftanın ilk gününü gösteren bir tamsayı işaretçisi.
Dönüş Değeri
Haftanın önceki ilk günü, denetim masası ayarında belirtilen gün olan LOCALE_IFIRSTDAYOFWEEK dışında bir değere ayarlanırsa sıfır olmayan. Aksi takdirde, bu işlev 0 döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETFIRSTDAYOFWEEK davranışını uygular.
Örnek
// This work isn't normally necessary, since the control will set
// the day of the week to match the system locale by itself.
// Ask the system for the first day of the week
TCHAR sz[2];
GetLocaleInfo(LOCALE_SYSTEM_DEFAULT, LOCALE_IFIRSTDAYOFWEEK, sz, 2);
// Convert from string result
int nFirstDay = _ttoi(sz);
// Set it and assert that it was successful.
m_calCtrl1.SetFirstDayOfWeek(nFirstDay);
ASSERT(m_calCtrl1.GetFirstDayOfWeek() == nFirstDay);
CMonthCalCtrl::SetMaxSelCount
Ay takvim denetiminde seçilebilen en fazla gün sayısını ayarlar.
BOOL SetMaxSelCount(int nMax);
Parametreler
nMax
Seçilebilir gün sayısı üst sınırını temsil edecek şekilde ayarlanacak değer.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETMAXSELCOUNT davranışını uygular.
Örnek
// The control needs to have the MCS_MULTISELECT style
// for the following code to work.
// change the maximum selection count
m_calCtrl2.SetMaxSelCount(10);
// check that the change was really made
ASSERT(m_calCtrl2.GetMaxSelCount() == 10);
CMonthCalCtrl::SetMonthDelta
Ay takvim denetimi için kaydırma hızını ayarlar.
int SetMonthDelta(int iDelta);
Parametreler
iDelta
Denetimin kaydırma hızı olarak ayarlanacak ay sayısı. Bu değer sıfırsa, ay deltası varsayılan değere sıfırlanır ve bu, denetimde görüntülenen ay sayısıdır.
Dönüş Değeri
Önceki kaydırma hızı. Kaydırma hızı daha önce ayarlanmamışsa, dönüş değeri 0'dır.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETMONTHDELTA davranışını uygular.
CMonthCalCtrl::SetMonthView
Geçerli ay takvimi denetimini ay görünümünü görüntüleyecek şekilde ayarlar.
BOOL SetMonthView();
Dönüş Değeri
Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, görünümü ay görünümünü temsil eden MCMV_MONTH olarak ayarlamak için CMonthCalCtrl::SetCurrentView yöntemini kullanır.
Örnek
İlk kod örneği, m_monthCalCtrl
ay takvimi denetimine program aracılığıyla erişmek için kullanılan değişkenini tanımlar. Bu değişken sonraki örnekte kullanılır.
// Variable used to reference the month calendar control.
CMonthCalCtrl m_monthCalCtrl;
// Variable used to reference the splitbutton control.
CSplitButton m_splitButton;
Sonraki kod örneği, ay, yıl, on yıl ve yüzyıl görünümlerini görüntülemek için ay takvimi denetimini ayarlar.
void CCMonthCalCtrl_s1Dlg::OnSetviewSetmonthview()
{
m_monthCalCtrl.SetMonthView();
}
void CCMonthCalCtrl_s1Dlg::OnSetviewSetyearview()
{
m_monthCalCtrl.SetYearView();
}
void CCMonthCalCtrl_s1Dlg::OnSetviewSetdecadeview()
{
m_monthCalCtrl.SetDecadeView();
}
void CCMonthCalCtrl_s1Dlg::OnSetviewSetcenturyview()
{
m_monthCalCtrl.SetCenturyView();
}
CMonthCalCtrl::SetRange
Bir ay takvim denetimi için izin verilen en düşük ve en yüksek tarihleri ayarlar.
BOOL SetRange(
const COleDateTime* pMinRange,
const COleDateTime* pMaxRange);
BOOL SetRange(
const CTime* pMinRange,
const CTime* pMaxRange);
BOOL SetRange(
const LPSYSTEMTIME pMinRange,
const LPSYSTEMTIME pMaxRange);
Parametreler
pMinRange
Aralığın en alt ucundaki tarihi içeren bir COleDateTime
CTime
nesne, nesne veya SYSTEMTIME yapısının işaretçisi.
pMaxRange
Aralığın en üst ucundaki tarihi içeren bir COleDateTime
CTime
nesneye, nesneye veya SYSTEMTIME
yapıya yönelik bir işaretçi.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETRANGE davranışını uygular. MFC'nin uygulamasında SetRange
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsinizCOleDateTime
.
Örnek
CMonthCalCtrl::GetRange örneğine bakın.
CMonthCalCtrl::SetSelRange
Ay takvimi denetimi seçimini belirli bir tarih aralığına ayarlar.
BOOL SetSelRange(
const COleDateTime& pMinRange,
const COleDateTime& pMaxRange);
BOOL SetSelRange(
const CTime& pMinRange,
const CTime& pMaxRange);
BOOL SetSelRange(
const LPSYSTEMTIME pMinRange,
const LPSYSTEMTIME pMaxRange);
Parametreler
pMinRange
Aralığın en alt ucundaki tarihi içeren bir COleDateTime
CTime
nesne, nesne veya SYSTEMTIME yapısının işaretçisi.
pMaxRange
Aralığın en üst ucundaki tarihi içeren bir COleDateTime
CTime
nesneye, nesneye veya SYSTEMTIME
yapıya yönelik bir işaretçi.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETSELRANGE davranışını uygular. MFC'nin uygulamasında SetSelRange
kullanım, CTime
kullanım veya SYSTEMTIME
yapı kullanımı belirtebilirsinizCOleDateTime
.
CMonthCalCtrl::SetToday
Geçerli günün takvim denetimini ayarlar.
void SetToday(const COleDateTime& refDateTime);
void SetToday(const CTime* pDateTime);
void SetToday(const LPSYSTEMTIME pDateTime);
Parametreler
refDateTime
Geçerli tarihi içeren bir COleDateTime nesnesine başvuru.
pDateTime
İkinci sürümde, geçerli tarih bilgilerini içeren bir CTime nesnesinin işaretçisi. Üçüncü sürümde, geçerli tarih bilgilerini içeren systemtime yapısının işaretçisi.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 ileti MCM_SETTODAY davranışını uygular.
Örnek
CMonthCalCtrl::GetToday örneğine bakın.
CMonthCalCtrl::SetYearView
Geçerli ay takvimi denetimini yıl görünümüne ayarlar.
BOOL SetYearView();
Dönüş Değeri
Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem, görünümü yıllık görünümü temsil eden MCMV_YEAR olarak ayarlamak için CMonthCalCtrl::SetCurrentView yöntemini kullanır.
CMonthCalCtrl::SizeMinReq
Ay takvim denetimini, bir ay görüntüleyen en düşük boyutta görüntüler.
BOOL SizeMinReq(BOOL bRepaint = TRUE);
Parametreler
bRepaint
Denetimin yeniden boyanıp boyanmayacağını belirtir. Varsayılan olarak DOĞRU'yu seçin. YANLIŞ ise, yeniden boyama gerçekleşmez.
Dönüş Değeri
Ay takvimi denetimi minimuma boyutlandırılmışsa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Arama SizeMinReq
başarılı bir şekilde bir ayın takvimi için tüm ay takvimi denetimini görüntüler.
CMonthCalCtrl::SizeRectToMin
Geçerli ay takvim denetimi için, belirtilen dikdörtgene sığan tüm takvimleri içerebilen en küçük dikdörtgeni hesaplar.
LPRECT SizeRectToMin(LPRECT lpRect);
Parametreler
lpRect
[in] İstenen sayıda takvim içeren bir dikdörtgen tanımlayan rect yapısının işaretçisi.
Dönüş Değeri
Boyutu lpRect parametresi tarafından tanımlanan dikdörtgenden küçük veya buna eşit olan bir dikdörtgeni tanımlayan rect yapısının işaretçisi.
Açıklamalar
Bu yöntem, lpRect parametresi tarafından belirtilen dikdörtgene kaç takvimin sığabileceğini hesaplar ve sonra bu sayıda takvim içerebilen en küçük dikdörtgeni döndürür. Aslında, bu yöntem belirtilen dikdörtgeni istenen takvim sayısına tam olarak sığacak şekilde küçültür.
Bu yöntem, Windows SDK'sında açıklanan MCM_SIZERECTTOMIN iletisini gönderir.
Ayrıca bkz.
MFC Örnek CMNCTRL1
CWnd Sınıfı
Hiyerarşi Grafiği
CDateTimeCtrl Sınıfı