CDateTimeCtrl
Sınıf
Tarih ve saat seçici denetiminin işlevselliğini kapsüller.
Sözdizimi
class CDateTimeCtrl : public CWnd
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CDateTimeCtrl::CDateTimeCtrl |
Bir CDateTimeCtrl nesne oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CDateTimeCtrl::CloseMonthCal |
Geçerli tarih ve saat seçici denetimini kapatır. |
CDateTimeCtrl::Create |
Tarih ve saat seçici denetimini oluşturur ve nesneye CDateTimeCtrl ekler. |
CDateTimeCtrl::GetDateTimePickerInfo |
Geçerli tarih ve saat seçici denetimi hakkındaki bilgileri alır. |
CDateTimeCtrl::GetIdealSize |
Geçerli tarih veya saati görüntülemek için gereken tarih ve saat seçici denetiminin ideal boyutunu döndürür. |
CDateTimeCtrl::GetMonthCalColor |
Tarih ve saat seçici denetimi içinde ay takviminin belirli bir bölümünün rengini alır. |
CDateTimeCtrl::GetMonthCalCtrl |
CMonthCalCtrl Tarih ve saat seçici denetimiyle ilişkili nesneyi alır. |
CDateTimeCtrl::GetMonthCalFont |
Tarih ve saat seçici denetiminin alt ay takvim denetimi tarafından kullanılmakta olan yazı tipini alır. |
CDateTimeCtrl::GetMonthCalStyle |
Geçerli tarih ve saat seçici denetiminin stilini alır. |
CDateTimeCtrl::GetRange |
Tarih ve saat seçici denetimi için izin verilen en düşük ve en yüksek sistem saatlerini alır. |
CDateTimeCtrl::GetTime |
Seçili durumdaki saati bir tarih ve saat seçici denetiminden alır ve belirtilen SYSTEMTIME bir yapıya yerleştirir. |
CDateTimeCtrl::SetFormat |
Tarih ve saat seçici denetiminin görüntülenmesini belirli bir biçim dizesine göre ayarlar. |
CDateTimeCtrl::SetMonthCalColor |
Tarih ve saat seçici denetiminde ay takviminin belirli bir bölümünün rengini ayarlar. |
CDateTimeCtrl::SetMonthCalFont |
Tarih ve saat seçici denetiminin alt ay takvim denetiminin kullanacağı yazı tipini ayarlar. |
CDateTimeCtrl::SetMonthCalStyle |
Geçerli tarih ve saat seçici denetiminin stilini ayarlar. |
CDateTimeCtrl::SetRange |
Tarih ve saat seçici denetimi için izin verilen en düşük ve en yüksek sistem saatlerini ayarlar. |
CDateTimeCtrl::SetTime |
Tarih ve saat seçici denetimindeki saati ayarlar. |
Açıklamalar
Tarih ve saat seçici denetimi (DTP denetimi), bir kullanıcıyla tarih ve saat bilgilerini değiştirmek için basit bir arabirim sağlar. Bu arabirim, her biri denetimde depolanan tarih ve saat bilgilerinin bir bölümünü görüntüleyen alanlar içerir. Kullanıcı, belirli bir alandaki dizenin içeriğini değiştirerek denetimde depolanan bilgileri değiştirebilir. Kullanıcı, fareyi veya klavyeyi kullanarak alandan alana geçebilir.
Nesne oluştururken nesneye çeşitli stiller uygulayarak tarih ve saat seçici denetimini özelleştirebilirsiniz. Tarih ve saat seçici denetimine özgü stiller hakkında daha fazla bilgi için bkz . Windows SDK'sında Tarih ve Saat Seçici Denetim Stilleri . Biçim stillerini kullanarak DTP denetiminin görüntü biçimini ayarlayabilirsiniz. Bu biçim stilleri, Windows SDK'sı konu başlığındaki Tarih ve Saat Seçici Denetim Stilleri'ndeki "Biçim Stilleri" altında açıklanmıştır.
Tarih ve saat seçici denetimi ayrıca, Kullanma CDateTimeCtrl
bölümünde açıklanan bildirimleri ve geri çağırmaları da kullanır.
Devralma Hiyerarşisi
CDateTimeCtrl
Gereksinimler
Üstbilgi: afxdtctl.h
CDateTimeCtrl::CDateTimeCtrl
Bir CDateTimeCtrl
nesne oluşturur.
CDateTimeCtrl();
CDateTimeCtrl::CloseMonthCal
Geçerli tarih ve saat seçici denetimini kapatır.
void CloseMonthCal() const;
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir DTM_CLOSEMONTHCAL
.
Örnek
İlk kod örneği, m_dateTimeCtrl
tarih ve saat seçici 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 to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Sonraki kod örneği, geçerli tarih ve saat seçici denetimi için açılan takvimi kapatır.
void CCDateTimeCtrl_s1Dlg::OnXClosemonthcal()
{
// Close the month calendar control dropdown.
m_dateTimeCtrl.CloseMonthCal();
}
CDateTimeCtrl::Create
Tarih ve saat seçici denetimini oluşturur ve nesneye CDateTimeCtrl
ekler.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parametreler
dwStyle
Tarih saat denetimi stillerinin birleşimini belirtir. Tarih ve saat seçici stilleri hakkında daha fazla bilgi için bkz. Windows SDK'sında Tarih ve Saat Seçici Denetim Stilleri.
rect
Tarih ve saat seçici denetiminin konumu ve boyutu olan yapı RECT
başvurusu.
pParentWnd
Tarih ve saat seçici denetiminin üst penceresi olan bir CWnd
nesnenin işaretçisi. Bu olmamalıdır NULL
.
nID
Tarih ve saat seçici denetiminin denetim kimliğini belirtir.
Dönüş Değeri
Oluşturma başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Tarih ve saat seçici denetimi oluşturmak için
Nesne
CDateTimeCtrl
oluşturmak için çağrısıCDateTimeCtrl
yapın.Windows tarih ve saat seçici denetimini oluşturan ve nesneye ekleyen bu üye işlevini çağırın
CDateTimeCtrl
.
çağırdığınızda Create
ortak denetimler başlatılır.
Örnek
// choose an arbitrary rectangle for creation
CRect rect(20, 20, 120, 45);
m_DateTimeCtrl.Create(WS_VISIBLE | WS_CHILD | WS_TABSTOP | DTS_SHOWNONE |
DTS_SHORTDATEFORMAT,
rect, this, IDC_DATETIMECTRL);
CDateTimeCtrl::GetDateTimePickerInfo
Geçerli tarih ve saat seçici denetimi hakkındaki bilgileri alır.
BOOL GetDateTimePickerInfo(LPDATETIMEPICKERINFO pDateTimePickerInfo) const;
Parametreler
pDateTimePickerInfo
[out] Geçerli tarih ve saat seçici denetiminin açıklamasını alan bir DATETIMEPICKERINFO
yapı işaretçisi. Arayan bu yapıyı ayırmadan sorumludur. Ancak, bu yöntem yapının üyesini başlatır cbSize
.
Dönüş Değeri
TRUE
bu yöntem başarılı olursa; aksi takdirde , FALSE
.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir DTM_GETDATETIMEPICKERINFO
.
Örnek
İlk kod örneği, m_dateTimeCtrl
tarih ve saat seçici 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 to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Sonraki kod örneği, geçerli tarih ve saat seçici denetimi hakkındaki bilgileri başarıyla alıp almadığını gösterir.
void CCDateTimeCtrl_s1Dlg::OnXGetdatetimepickerinfo()
{
// Get information about the date-time picker control.
DATETIMEPICKERINFO dtpi = {0};
dtpi.cbSize = sizeof(DATETIMEPICKERINFO);
BOOL rc = m_dateTimeCtrl.GetDateTimePickerInfo(&dtpi);
if (rc == TRUE)
AfxMessageBox(_T("Information retrieved"),
MB_ICONEXCLAMATION);
else
AfxMessageBox(_T("Information was not retrieved"));
}
CDateTimeCtrl::GetMonthCalColor
Tarih ve saat seçici denetimi içinde ay takviminin belirli bir bölümünün rengini alır.
COLORREF GetMonthCalColor(int iColor) const;
Parametreler
iColor
int
Ay takviminin hangi renk alanının alınacağını belirten değer. Değerlerin listesi için SetMonthCalColor
parametresine iColor
bakın.
Dönüş Değeri
COLORREF
Başarılı olursa ay takvimi denetiminin belirtilen bölümü için renk ayarını temsil eden bir değer. İşlev başarısız olursa -1 döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin DTM_GETMCCOLOR
davranışını uygular.
Örnek
// Set the color for the text in the control and
// assure it was set properly. Unlike the GetMonthCalCtrl() member,
// GetMonthCalColor() and SetMonthCalColor() can be used at any time.
m_DateTimeCtrl.SetMonthCalColor(MCSC_TEXT, RGB(255, 0, 0));
VERIFY(m_DateTimeCtrl.GetMonthCalColor(MCSC_TEXT) == RGB(255, 0, 0));
CDateTimeCtrl::GetMonthCalCtrl
CMonthCalCtrl
Tarih ve saat seçici denetimiyle ilişkili nesneyi alır.
CMonthCalCtrl* GetMonthCalCtrl() const;
Dönüş Değeri
Nesne CMonthCalCtrl
işaretçisi veya NULL
başarısızsa veya pencere görünmüyorsa.
Açıklamalar
Tarih ve saat seçici denetimleri, kullanıcı açılan oku seçtiğinde bir alt ay takvim denetimi oluşturur. CMonthCalCtrl
Nesne artık gerekli olmadığında yok edilir, bu nedenle uygulamanız tarih saat seçici denetiminin alt ay takvimini temsil eden nesneyi depolamaya güvenmemelidir.
Örnek
void CDateTimeDlg::OnDropDownDateTimeCtrl(NMHDR *pNMHDR, LRESULT *pResult)
{
UNREFERENCED_PARAMETER(pNMHDR);
// note that GetMonthCalCtrl() will only return a pointer to the
// month calendar control while the control actually exists--that is,
// while it has been dropped-down by the user. Otherwise, the function
// returns NULL. One appropriate time to get the control is while
// handling the DTN_DROPDOWN notification for the date time picker
// control.
// get the control
CMonthCalCtrl *pMoCalCtrl = m_DateTimeCtrl.GetMonthCalCtrl();
ASSERT(pMoCalCtrl != NULL);
// now, pMoCalCtrl is useful...
*pResult = 0;
}
CDateTimeCtrl::GetMonthCalFont
Tarih ve saat seçici denetiminin ay takvim denetimi tarafından şu anda kullanılan yazı tipini alır.
CFont* GetMonthCalFont() const;
Dönüş Değeri
Nesne işaretçisi CFont
veya NULL
başarısız olması.
Açıklamalar
CFont
Dönüş değeri tarafından işaret edilen nesne geçici bir nesnedir ve bir sonraki boşta işlem zamanında yok edilir.
CDateTimeCtrl::GetMonthCalStyle
Geçerli tarih ve saat seçici denetimiyle ilişkili açılan ay takvim denetiminin stilini alır.
DWORD GetMonthCalStyle() const;
Dönüş Değeri
Tarih ve saat seçici denetim stillerinin bit düzeyinde bir bileşimi olan açılan ay takvim denetiminin stili. Daha fazla bilgi için bkz . Ay Takvimi Denetim Stilleri.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir DTM_GETMCSTYLE
.
CDateTimeCtrl::GetRange
Tarih ve saat seçici denetimi için izin verilen en düşük ve en yüksek sistem saatlerini alır.
DWORD GetRange(
COleDateTime* pMinRange,
COleDateTime* pMaxRange) const;
DWORD GetRange(
CTime* pMinRange,
CTime* pMaxRange) const;
Parametreler
pMinRange
Nesnenin işaretçisi COleDateTime
veya CTime
nesnede CDateTimeCtrl
izin verilen en erken zamanı içeren bir nesne.
pMaxRange
Nesnenin işaretçisi COleDateTime
veya CTime
nesnede CDateTimeCtrl
izin verilen en son zamanı içeren bir nesne.
Dönüş Değeri
DWORD
Hangi aralıkların ayarlandığını gösteren bayraklar içeren bir değer. If
return value & GDTR_MAX
== 0
ardından ikinci parametre geçerli olur. Benzer şekilde, eğer
return value & GDTR_MIN
== 0
ardından ilk parametre geçerli olur.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin DTM_GETRANGE
davranışını uygular. MFC'nin uygulamasında veya CTime
kullanımlarını belirtebilirsinizCOleDateTime
.
Örnek
// This function will set several ranges in the control, then
// call the ShowRange() function to show the set ranges to the
// user.
void CDateTimeDlg::OnBnClickedRangesbutton()
{
// 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_DateTimeCtrl.SetRange(&dtMin, &dtMax);
ShowRange(&m_DateTimeCtrl);
// Set no minimum and maximum of September 30th, 1997.
dtMin.SetStatus(COleDateTime::null);
dtMax = COleDateTime(1997, 9, 30, 0, 0, 0);
m_DateTimeCtrl.SetRange(&dtMin, &dtMax);
ShowRange(&m_DateTimeCtrl);
// 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_DateTimeCtrl.SetRange(&dtMin, &dtMax);
ShowRange(&m_DateTimeCtrl);
}
void CDateTimeDlg::ShowRange(CDateTimeCtrl *pCtrl)
{
ASSERT(pCtrl != NULL);
CString strMessage;
COleDateTime dtMinimum;
COleDateTime dtMaximum;
// Get the range.
DWORD dwResult = pCtrl->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);
}
CDateTimeCtrl::GetTime
Seçili durumdaki saati bir tarih ve saat seçici denetiminden alır ve belirtilen SYSTEMTIME
bir yapıya yerleştirir.
BOOL GetTime(COleDateTime& timeDest) const;
DWORD GetTime(CTime& timeDest) const;
DWORD GetTime(LPSYSTEMTIME pTimeDest) const;
Parametreler
timeDest
İlk sürümde, sistem saat bilgilerini alacak bir COleDateTime
nesneye başvuru. İkinci sürümde, sistem saat bilgilerini alacak bir CTime
nesneye başvuru.
pTimeDest
SYSTEMTIME
Sistem zamanı bilgilerini almak için yapı işaretçisi. olmamalıdır NULL
.
Dönüş Değeri
İlk sürümde, süre nesneye COleDateTime
başarıyla yazılırsa sıfır olmayan; aksi takdirde 0. İkinci ve üçüncü sürümlerde, yapıdaki NMDATETIMECHANGE
üye kümesine dwFlag
eşit bir DWORD
değer. Daha fazla bilgi için aşağıdaki Açıklamalar bölümüne bakın.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin DTM_GETSYSTEMTIME
davranışını uygular. MFC uygulamasındaGetTime
COleDateTime
, zaman bilgilerini depolamak için veya CTime
sınıflarını kullanabilir ya da bir SYSTEMTIME
yapı kullanabilirsiniz.
Yukarıdaki ikinci ve üçüncü sürümlerdeki dönüş değeriDWORD
, tarih ve saat seçici denetiminin yapı üyesinde dwFlags
belirtildiği gibi "tarih yok" durumuna ayarlanıp ayarlanmadığını NMDATETIMECHANGE
gösterir. Döndürülen değer eşittir GDT_NONE
ise, denetim "tarih yok" durumuna ayarlanır ve stili kullanır DTS_SHOWNONE
. Döndürülen değer eşittir GDT_VALID
ise, sistem süresi hedef konumda başarıyla depolanır.
Örnek
void CDateTimeDlg::OnBnClickedTimebutton()
{
// get as a CTime
CTime timeTime;
DWORD dwResult = m_DateTimeCtrl.GetTime(timeTime);
if (dwResult == GDT_VALID)
{
// the user checked the box and specified data
CString str;
// is it a time-only control, or a date-only control?
if ((m_DateTimeCtrl.GetStyle() & DTS_TIMEFORMAT) == DTS_TIMEFORMAT)
str = timeTime.Format(_T("%X"));
else
str = timeTime.Format(_T("%x"));
AfxMessageBox(str);
}
else
{
// the user unmarked the "none" box
AfxMessageBox(_T("Time not set!"));
}
// Calling as SYSTIME is much the same, but calling for a COleDateTime
// has us test the state of the COleDateTime object for validity to
// see if the user did or didn't check the "none" box.
}
CDateTimeCtrl::GetIdealSize
Geçerli tarih veya saati görüntülemek için gereken tarih ve saat seçici denetiminin ideal boyutunu döndürür.
BOOL GetIdealSize(LPSIZE psize) const;
Parametreler
psize
[out] Denetim için ideal boyutu içeren bir SIZE
yapıya yönelik işaretçi.
Dönüş Değeri
Dönüş değeri her zaman TRUE
şeklindedir.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir DTM_GETIDEALSIZE
.
Örnek
İlk kod örneği, m_dateTimeCtrl
tarih ve saat seçici 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 to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Sonraki kod örneği, tarih ve saat seçici denetimini görüntülemek için ideal boyutu alır.
// Add extra initialization here
// Associate a menu with the splitbutton control.
m_splitbutton.SetDropDownMenu(IDR_MENU1, 0);
// Resize the date-time picker control.
SIZE sz;
m_dateTimeCtrl.GetIdealSize(&sz);
if ((sz.cx != 0) && (sz.cy != 0))
{
m_dateTimeCtrl.SetWindowPos(
this,
0, 0, sz.cx, sz.cy,
(SWP_NOMOVE | SWP_NOZORDER | SWP_NOREPOSITION | SWP_NOACTIVATE));
}
// End of extra initialization
CDateTimeCtrl::SetFormat
Tarih ve saat seçici denetiminin görüntülenmesini belirli bir biçim dizesine göre ayarlar.
BOOL SetFormat(LPCTSTR pstrFormat);
Parametreler
pstrFormat
İstenen görüntüyü tanımlayan sıfır sonlandırılan biçim dizesine işaretçi. Bu parametrenin olarak NULL
ayarlanması, denetimi geçerli stil için varsayılan biçim dizesine sıfırlar.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Not
Kullanıcı girişi bu çağrının başarısını veya başarısızlığını belirlemez.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin DTM_SETFORMAT
davranışını uygular.
Örnek
// The control will create itself with a format that matches the
// locale setting in Control Panel. But we can force a particular
// format with a call to SetFormat(). This call forces the format
// dd-MMM-yy, which would show 03-APR-98 for April 3rd, 1998.
m_DateTimeCtrl.SetFormat(_T("dd-MMM-yy"));
CDateTimeCtrl::SetMonthCalColor
Tarih ve saat seçici denetiminde ay takviminin belirli bir bölümünün rengini ayarlar.
COLORREF SetMonthCalColor(
int iColor,
COLORREF ref);
Parametreler
iColor
int
ay takvimi denetiminin ayarlanacağı alanı belirten değer. Bu değer aşağıdakilerden biri olabilir.
Değer | Anlamı |
---|---|
MCSC_BACKGROUND |
Aylar arasında görüntülenen arka plan rengini ayarlayın. |
MCSC_MONTHBK |
Bir ay içinde görüntülenecek arka plan rengini ayarlayın. |
MCSC_TEXT |
Bir ay içinde metni görüntülemek için kullanılan rengi ayarlayın. |
MCSC_TITLEBK |
Takvimin başlığında görüntülenen arka plan rengini ayarlayın. |
MCSC_TITLETEXT |
Takvimin başlığındaki metni görüntülemek için kullanılan rengi ayarlayın. |
MCSC_TRAILINGTEXT |
Üst bilgiyi ve sondaki gün metnini görüntülemek için kullanılan rengi ayarlayın. Üst bilgi ve sondaki günler, geçerli takvimde görünen önceki ve sonraki aylara ait günlerdir. |
ref
COLORREF
Ay takviminin belirtilen alanı için ayarlanacak rengi temsil eden değer.
Dönüş Değeri
COLORREF
Başarılı olursa ay takvimi denetiminin belirtilen bölümü için önceki renk ayarını temsil eden bir değer. Aksi takdirde, ileti -1 döndürür.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin DTM_SETMCCOLOR
davranışını uygular.
Örnek
CDateTimeCtrl::GetMonthCalColor örneğine bakın.
CDateTimeCtrl::SetMonthCalFont
Tarih ve saat seçici denetiminin alt ay takvim denetiminin kullanacağı yazı tipini ayarlar.
void SetMonthCalFont(
HFONT hFont,
BOOL bRedraw = TRUE);
Parametreler
hFont
Ayarlanacak yazı tipinin tutamacı.
bRedraw
Denetimin yazı tipini ayarladıkten hemen sonra yeniden çizilip çizilmeyeceğini belirtir. Bu parametrenin olarak TRUE
ayarlanması, denetimin kendisini yeniden çizmesine neden olur.
Açıklamalar
Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin DTM_SETMCFONT
davranışını uygular.
Örnek
// The following code example would most likely appear
// in the OnInitDialog function of your dialog class.
// It creates a font (Arial, 10 pixels high) and if successful,
// stores the result in m_MonthFont, a member of your
// dialog class declared as follows:
// CFont m_MonthFont;
// SetMonthCalFont is then called passing in the new font,
// causing the month calendar control to display all
// text and dates with an Arial font.
//initializing the necessary members of the LOGFONT
// structure
LOGFONT lf;
memset(&lf, 0, sizeof(lf));
lf.lfHeight = 10;
_tcscpy_s(lf.lfFaceName, LF_FACESIZE, _T("Arial"));
if (m_MonthFont.CreateFontIndirect(&lf))
{
// if successful, set the month calendar font
m_DateTimeCtrl.SetMonthCalFont((HFONT)m_MonthFont);
}
Not
Bu kodu kullanırsanız türündeki m_MonthFont CFont
adlı türetilmiş sınıfınızın CDialog
bir üyesini oluşturmak istersiniz.
CDateTimeCtrl::SetMonthCalStyle
Geçerli tarih ve saat seçici denetimiyle ilişkili açılan ay takvim denetiminin stilini ayarlar.
DWORD SetMonthCalStyle(DWORD dwStyle);
Parametreler
dwStyle
[in] Ay takvimi denetim stillerinin bit düzeyinde bir bileşimi (VEYA) olan yeni ay takvim denetimi stili. Daha fazla bilgi için bkz . Ay Takvimi Denetim Stilleri.
Dönüş Değeri
Açılan ay takvim denetiminin önceki stili.
Açıklamalar
Bu yöntem, Windows SDK'sında açıklanan iletiyi gönderir DTM_SETMCSTYLE
.
Örnek
İlk kod örneği, m_dateTimeCtrl
tarih ve saat seçici 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 to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Sonraki kod örneği, tarih ve saat seçici denetimini hafta numaralarını, haftanın günlerinin kısaltılmış adlarını ve bugün göstergesini görüntüleyecek şekilde ayarlar.
// Set the style of the month-calendar control dropdown.
void CCDateTimeCtrl_s1Dlg::OnSetmonthcalstyleWeeknumber()
{
m_dateTimeCtrl.SetMonthCalStyle(MCS_WEEKNUMBERS);
}
void CCDateTimeCtrl_s1Dlg::OnSetmonthcalstyleNotoday()
{
m_dateTimeCtrl.SetMonthCalStyle(MCS_NOTODAY);
}
void CCDateTimeCtrl_s1Dlg::OnSetmonthcalstyleShortdaysofweek()
{
m_dateTimeCtrl.SetMonthCalStyle(MCS_SHORTDAYSOFWEEK);
}
CDateTimeCtrl::SetRange
Tarih ve saat seçici denetimi için izin verilen en düşük ve en yüksek sistem saatlerini ayarlar.
BOOL SetRange(
const COleDateTime* pMinRange,
const COleDateTime* pMaxRange);
BOOL SetRange(
const CTime* pMinRange,
const CTime* pMaxRange);
Parametreler
pMinRange
Nesnenin işaretçisi COleDateTime
veya CTime
nesnede CDateTimeCtrl
izin verilen en erken zamanı içeren bir nesne.
pMaxRange
Nesnenin işaretçisi COleDateTime
veya CTime
nesnede CDateTimeCtrl
izin verilen en son zamanı içeren bir nesne.
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 iletisinin DTM_SETRANGE
davranışını uygular. MFC'nin uygulamasında veya CTime
kullanımlarını belirtebilirsinizCOleDateTime
. Nesnenin COleDateTime
NULL
durumu varsa, aralık kaldırılır. CTime
İşaretçi veya COleDateTime
işaretçi iseNULL
, aralık kaldırılır.
Örnek
örneğine CDateTimeCtrl::GetRange
bakın.
CDateTimeCtrl::SetTime
Tarih ve saat seçici denetimindeki saati ayarlar.
BOOL SetTime(const COleDateTime& timeNew);
BOOL SetTime(const CTime* pTimeNew);
BOOL SetTime(LPSYSTEMTIME pTimeNew = NULL);
Parametreler
timeNew
Denetimin ayarlanacağı öğesini içeren bir COleDateTime
nesneye başvuru.
pTimeNew
Yukarıdaki ikinci sürümde, denetimin ayarlanacağı zamanı içeren bir CTime
nesne işaretçisi. Yukarıdaki üçüncü sürümde, denetimin ayarlanacağı zamanı içeren bir yapıya yönelik bir SYSTEMTIME
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 iletisinin DTM_SETSYSTEMTIME
davranışını uygular. MFC uygulamasında SetTime
veya sınıflarını COleDateTime
CTime
kullanabilir veya zaman bilgilerini ayarlamak için bir SYSTEMTIME
yapı kullanabilirsiniz.
Örnek
// set with a CTime
CTime timeTime(1998, 4, 3, 0, 0, 0);
VERIFY(m_DateTimeCtrl.SetTime(&timeTime));
// set with a COleDateTime object
COleDateTime oletimeTime(1998, 4, 3, 0, 0, 0);
VERIFY(m_DateTimeCtrl.SetTime(oletimeTime));
// set using the SYSTEMTIME
SYSTEMTIME sysTime;
memset(&sysTime, 0, sizeof(sysTime));
sysTime.wYear = 1998;
sysTime.wMonth = 4;
sysTime.wDay = 3;
VERIFY(m_DateTimeCtrl.SetTime(&sysTime));
Ayrıca bkz.
MFC Örneği CMNCTRL1
CWnd
Sınıf
Hiyerarşi Grafiği
CMonthCalCtrl
Sınıf