Aracılığıyla paylaş


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

CObject

CCmdTarget

CWnd

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:

  1. Nesne CMonthCalCtrl oluşturmak için CMonthCalCtrl çağrısı yapın.

  2. Ay takvim denetimi oluşturan ve bunu nesnesine ekleyen bu üye işlevini çağırın CMonthCalCtrl .

çağırdığınızda Createortak 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_monthCalCtrlay 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_monthCalCtrlay 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 GetCurSelbir 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_monthCalCtrlay 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 GetMonthRangekullanı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 GetRangebir 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 GetSelRangekullanı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 GetTodaybir 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

HitTestMCHITTESTINFO, 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_monthCalCtrlay 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_monthCalCtrlay 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_CENTURYayarlar.

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ü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ü

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 SetCurSelbir 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_DECADEtemsil 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_monthCalCtrlay 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 SetRangekullanı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 SetSelRangekullanı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ı