CDateTimeCtrl
Kelas
Merangkum fungsionalitas kontrol pemilih tanggal dan waktu.
Sintaks
class CDateTimeCtrl : public CWnd
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
CDateTimeCtrl::CDateTimeCtrl |
Membuat CDateTimeCtrl objek. |
Metode Publik
Nama | Deskripsi |
---|---|
CDateTimeCtrl::CloseMonthCal |
Menutup kontrol pemilih tanggal dan waktu saat ini. |
CDateTimeCtrl::Create |
Membuat kontrol pemilih tanggal dan waktu dan melampirkannya ke CDateTimeCtrl objek. |
CDateTimeCtrl::GetDateTimePickerInfo |
Mengambil informasi tentang kontrol pemilih tanggal dan waktu saat ini. |
CDateTimeCtrl::GetIdealSize |
Mengembalikan ukuran ideal kontrol pemilih tanggal dan waktu yang diperlukan untuk menampilkan tanggal atau waktu saat ini. |
CDateTimeCtrl::GetMonthCalColor |
Mengambil warna untuk bagian tertentu dari kalender bulan dalam kontrol pemilih tanggal dan waktu. |
CDateTimeCtrl::GetMonthCalCtrl |
Mengambil objek yang CMonthCalCtrl terkait dengan kontrol pemilih tanggal dan waktu. |
CDateTimeCtrl::GetMonthCalFont |
Mengambil font yang saat ini digunakan oleh kontrol kalender bulan anak kontrol pemilih tanggal dan waktu. |
CDateTimeCtrl::GetMonthCalStyle |
Mendapatkan gaya kontrol pemilih tanggal dan waktu saat ini. |
CDateTimeCtrl::GetRange |
Mengambil waktu sistem minimum dan maksimum yang diizinkan saat ini untuk kontrol pemilih tanggal dan waktu. |
CDateTimeCtrl::GetTime |
Mengambil waktu yang saat ini dipilih dari kontrol pemilih tanggal dan waktu dan menempatkannya dalam struktur tertentu SYSTEMTIME . |
CDateTimeCtrl::SetFormat |
Mengatur tampilan kontrol pemilih tanggal dan waktu sesuai dengan string format tertentu. |
CDateTimeCtrl::SetMonthCalColor |
Mengatur warna untuk bagian tertentu dari kalender bulan dalam kontrol pemilih tanggal dan waktu. |
CDateTimeCtrl::SetMonthCalFont |
Mengatur font yang akan digunakan kontrol kalender bulan anak kontrol pemilih tanggal dan waktu. |
CDateTimeCtrl::SetMonthCalStyle |
Mengatur gaya kontrol pemilih tanggal dan waktu saat ini. |
CDateTimeCtrl::SetRange |
Mengatur waktu sistem minimum dan maksimum yang diizinkan untuk kontrol pemilih tanggal dan waktu. |
CDateTimeCtrl::SetTime |
Mengatur waktu dalam kontrol pemilih tanggal dan waktu. |
Keterangan
Kontrol pemilih tanggal dan waktu (kontrol DTP) menyediakan antarmuka sederhana untuk bertukar informasi tanggal dan waktu dengan pengguna. Antarmuka ini berisi bidang, yang masing-masing menampilkan bagian dari informasi tanggal dan waktu yang disimpan dalam kontrol. Pengguna dapat mengubah informasi yang disimpan dalam kontrol dengan mengubah konten string di bidang tertentu. Pengguna dapat berpindah dari bidang ke bidang menggunakan mouse atau keyboard.
Anda dapat menyesuaikan kontrol pemilih tanggal dan waktu dengan menerapkan berbagai gaya ke objek saat Anda membuatnya. Lihat Gaya Kontrol Pemilih Tanggal dan Waktu di Windows SDK untuk informasi selengkapnya tentang gaya khusus untuk kontrol pemilih tanggal dan waktu. Anda dapat mengatur format tampilan kontrol DTP menggunakan gaya format. Gaya format ini dijelaskan di bawah "Format Gaya" dalam topik Windows SDK Gaya Kontrol Pemilih Tanggal dan Waktu.
Kontrol pemilih tanggal dan waktu juga menggunakan pemberitahuan dan panggilan balik, yang dijelaskan dalam Menggunakan CDateTimeCtrl
.
Hierarki Warisan
CDateTimeCtrl
Persyaratan
Header: afxdtctl.h
CDateTimeCtrl::CDateTimeCtrl
Membuat CDateTimeCtrl
objek.
CDateTimeCtrl();
CDateTimeCtrl::CloseMonthCal
Menutup kontrol pemilih tanggal dan waktu saat ini.
void CloseMonthCal() const;
Keterangan
Metode ini mengirim DTM_CLOSEMONTHCAL
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_dateTimeCtrl
, yang digunakan untuk mengakses kontrol pemilih tanggal dan waktu secara terprogram. Variabel ini digunakan dalam contoh berikutnya.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Contoh kode berikutnya menutup kalender drop-down untuk kontrol pemilih tanggal dan waktu saat ini.
void CCDateTimeCtrl_s1Dlg::OnXClosemonthcal()
{
// Close the month calendar control dropdown.
m_dateTimeCtrl.CloseMonthCal();
}
CDateTimeCtrl::Create
Membuat kontrol pemilih tanggal dan waktu dan melampirkannya ke CDateTimeCtrl
objek.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parameter
dwStyle
Menentukan kombinasi gaya kontrol waktu tanggal. Lihat Gaya Kontrol Pemilih Tanggal dan Waktu di Windows SDK untuk informasi selengkapnya tentang gaya pemilih tanggal dan waktu.
rect
Referensi ke RECT
struktur, yang merupakan posisi dan ukuran kontrol pemilih tanggal dan waktu.
pParentWnd
Penunjuk ke CWnd
objek yang merupakan jendela induk kontrol pemilih tanggal dan waktu. Ini tidak boleh NULL
.
nID
Menentukan ID kontrol kontrol pemilih tanggal dan waktu.
Tampilkan Nilai
Bukan nol jika pembuatan berhasil; jika tidak, 0.
Keterangan
Untuk membuat kontrol pemilih tanggal dan waktu
Panggil
CDateTimeCtrl
untuk membuatCDateTimeCtrl
objek.Panggil fungsi anggota ini, yang membuat kontrol pemilih tanggal dan waktu Windows dan melampirkannya ke
CDateTimeCtrl
objek.
Saat Anda memanggil Create
, kontrol umum diinisialisasi.
Contoh
// 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
Mengambil informasi tentang kontrol pemilih tanggal dan waktu saat ini.
BOOL GetDateTimePickerInfo(LPDATETIMEPICKERINFO pDateTimePickerInfo) const;
Parameter
pDateTimePickerInfo
[out] Penunjuk ke DATETIMEPICKERINFO
struktur yang menerima deskripsi kontrol pemilih tanggal dan waktu saat ini. Pemanggil bertanggung jawab untuk mengalokasikan struktur ini. Namun, metode ini menginisialisasi cbSize
anggota struktur.
Tampilkan Nilai
TRUE
jika metode ini berhasil; jika tidak, FALSE
.
Keterangan
Metode ini mengirim DTM_GETDATETIMEPICKERINFO
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_dateTimeCtrl
, yang digunakan untuk mengakses kontrol pemilih tanggal dan waktu secara terprogram. Variabel ini digunakan dalam contoh berikutnya.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Contoh kode berikutnya menunjukkan apakah kode berhasil mengambil informasi tentang kontrol pemilih tanggal dan waktu saat ini.
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
Mengambil warna untuk bagian tertentu dari kalender bulan dalam kontrol pemilih tanggal dan waktu.
COLORREF GetMonthCalColor(int iColor) const;
Parameter
iColor
Nilai int
yang menentukan area warna mana dari kalender bulan yang akan diambil. Untuk daftar nilai, lihat iColor
parameter untuk SetMonthCalColor
.
Tampilkan Nilai
COLORREF
Nilai yang mewakili pengaturan warna untuk bagian yang ditentukan dari kontrol kalender bulan jika berhasil. Fungsi mengembalikan -1 jika tidak berhasil.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_GETMCCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
Contoh
// 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
Mengambil objek yang CMonthCalCtrl
terkait dengan kontrol pemilih tanggal dan waktu.
CMonthCalCtrl* GetMonthCalCtrl() const;
Tampilkan Nilai
Penunjuk ke CMonthCalCtrl
objek, atau NULL
jika tidak berhasil atau jika jendela tidak terlihat.
Keterangan
Kontrol pemilih tanggal dan waktu membuat kontrol kalender bulan anak saat pengguna memilih panah turun bawah. CMonthCalCtrl
Ketika objek tidak lagi diperlukan, objek dihancurkan, sehingga aplikasi Anda tidak boleh mengandalkan penyimpanan objek yang mewakili kalender bulan anak kontrol pemilih waktu tanggal.
Contoh
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
Mendapatkan font yang saat ini digunakan oleh kontrol kalender bulan kontrol pemilih tanggal dan waktu.
CFont* GetMonthCalFont() const;
Tampilkan Nilai
Penunjuk ke CFont
objek, atau NULL
jika tidak berhasil.
Keterangan
Objek CFont
yang ditujukkan oleh nilai pengembalian adalah objek sementara dan dihancurkan selama waktu pemrosesan menganggur berikutnya.
CDateTimeCtrl::GetMonthCalStyle
Mendapatkan gaya kontrol kalender bulan drop-down yang terkait dengan kontrol pemilih tanggal dan waktu saat ini.
DWORD GetMonthCalStyle() const;
Tampilkan Nilai
Gaya kontrol kalender bulan drop-down, yang merupakan kombinasi bitwise (OR) gaya kontrol pemilih tanggal dan waktu. Untuk informasi selengkapnya, lihat Gaya Kontrol Kalender Bulan.
Keterangan
Metode ini mengirim DTM_GETMCSTYLE
pesan, yang dijelaskan dalam Windows SDK.
CDateTimeCtrl::GetRange
Mengambil waktu sistem minimum dan maksimum yang diizinkan saat ini untuk kontrol pemilih tanggal dan waktu.
DWORD GetRange(
COleDateTime* pMinRange,
COleDateTime* pMaxRange) const;
DWORD GetRange(
CTime* pMinRange,
CTime* pMaxRange) const;
Parameter
pMinRange
Penunjuk ke COleDateTime
objek atau objek yang CTime
berisi waktu paling awal yang diizinkan dalam CDateTimeCtrl
objek.
pMaxRange
Penunjuk ke COleDateTime
objek atau objek yang CTime
berisi waktu terbaru yang diizinkan dalam CDateTimeCtrl
objek.
Tampilkan Nilai
DWORD
Nilai yang berisi bendera yang menunjukkan rentang mana yang diatur. Jika
return value & GDTR_MAX
== 0
kemudian parameter kedua valid. Demikian pula, jika
return value & GDTR_MIN
== 0
maka parameter pertama valid.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_GETRANGE
Win32 , seperti yang dijelaskan dalam Windows SDK. Dalam implementasi MFC, Anda dapat menentukan salah satu COleDateTime
atau CTime
penggunaan.
Contoh
// 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
Mengambil waktu yang saat ini dipilih dari kontrol pemilih tanggal dan waktu dan menempatkannya dalam struktur tertentu SYSTEMTIME
.
BOOL GetTime(COleDateTime& timeDest) const;
DWORD GetTime(CTime& timeDest) const;
DWORD GetTime(LPSYSTEMTIME pTimeDest) const;
Parameter
timeDest
Di versi pertama, referensi ke COleDateTime
objek yang akan menerima informasi waktu sistem. Di versi kedua, referensi ke CTime
objek yang akan menerima informasi waktu sistem.
pTimeDest
Penunjuk ke SYSTEMTIME
struktur untuk menerima informasi waktu sistem. Tidak boleh NULL
.
Tampilkan Nilai
Di versi pertama, nonzero jika waktu berhasil ditulis ke COleDateTime
objek; jika tidak, 0. Di versi kedua dan ketiga, nilai yang sama dengan anggota yang DWORD
dwFlag
ditetapkan dalam NMDATETIMECHANGE
struktur. Lihat bagian Keterangan di bawah ini untuk informasi selengkapnya.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_GETSYSTEMTIME
Win32 , seperti yang dijelaskan dalam Windows SDK. Dalam implementasi MFC , GetTime
Anda dapat menggunakan COleDateTime
atau CTime
kelas, atau Anda dapat menggunakan SYSTEMTIME
struktur, untuk menyimpan informasi waktu.
Nilai DWORD
pengembalian dalam versi kedua dan ketiga, di atas, menunjukkan apakah kontrol pemilih tanggal dan waktu diatur ke status "tidak ada tanggal", seperti yang ditunjukkan dalam NMDATETIMECHANGE
anggota dwFlags
struktur . Jika nilai yang dikembalikan sama dengan GDT_NONE
, kontrol diatur ke status "tidak ada tanggal", dan menggunakan DTS_SHOWNONE
gaya. Jika nilai dikembalikan sama dengan GDT_VALID
, waktu sistem berhasil disimpan di lokasi tujuan.
Contoh
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
Mengembalikan ukuran ideal kontrol pemilih tanggal dan waktu yang diperlukan untuk menampilkan tanggal atau waktu saat ini.
BOOL GetIdealSize(LPSIZE psize) const;
Parameter
psize
[out] Penunjuk SIZE
ke struktur yang berisi ukuran ideal untuk kontrol.
Tampilkan Nilai
Nilai yang dikembalikan selalu TRUE
.
Keterangan
Metode ini mengirim DTM_GETIDEALSIZE
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_dateTimeCtrl
, yang digunakan untuk mengakses kontrol pemilih tanggal dan waktu secara terprogram. Variabel ini digunakan dalam contoh berikutnya.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Contoh kode berikutnya mengambil ukuran ideal untuk menampilkan kontrol pemilih tanggal dan waktu.
// 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
Mengatur tampilan kontrol pemilih tanggal dan waktu sesuai dengan string format tertentu.
BOOL SetFormat(LPCTSTR pstrFormat);
Parameter
pstrFormat
Penunjuk ke string format yang dihentikan nol yang menentukan tampilan yang diinginkan. Mengatur parameter ini ke NULL
akan mengatur ulang kontrol ke string format default untuk gaya saat ini.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Catatan
Input pengguna tidak menentukan keberhasilan atau kegagalan untuk panggilan ini.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_SETFORMAT
Win32 , seperti yang dijelaskan dalam Windows SDK.
Contoh
// 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
Mengatur warna untuk bagian tertentu dari kalender bulan dalam kontrol pemilih tanggal dan waktu.
COLORREF SetMonthCalColor(
int iColor,
COLORREF ref);
Parameter
iColor
int
nilai yang menentukan area kontrol kalender bulan mana yang akan diatur. Nilai ini bisa menjadi salah satu dari yang berikut ini.
Nilai | Makna |
---|---|
MCSC_BACKGROUND |
Atur warna latar belakang yang ditampilkan antara bulan. |
MCSC_MONTHBK |
Atur warna latar belakang yang ditampilkan dalam sebulan. |
MCSC_TEXT |
Atur warna yang digunakan untuk menampilkan teks dalam sebulan. |
MCSC_TITLEBK |
Atur warna latar belakang yang ditampilkan dalam judul kalender. |
MCSC_TITLETEXT |
Atur warna yang digunakan untuk menampilkan teks dalam judul kalender. |
MCSC_TRAILINGTEXT |
Atur warna yang digunakan untuk menampilkan header dan teks hari berikutnya. Header dan hari berikutnya adalah hari dari bulan sebelumnya dan berikutnya yang muncul di kalender saat ini. |
ref
COLORREF
Nilai yang mewakili warna yang akan diatur untuk area kalender bulan yang ditentukan.
Tampilkan Nilai
COLORREF
Nilai yang mewakili pengaturan warna sebelumnya untuk bagian yang ditentukan dari kontrol kalender bulan jika berhasil. Jika tidak, pesan akan menampilkan -1.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_SETMCCOLOR
Win32 , seperti yang dijelaskan dalam Windows SDK.
Contoh
Lihat contoh untuk CDateTimeCtrl::GetMonthCalColor.
CDateTimeCtrl::SetMonthCalFont
Mengatur font yang akan digunakan kontrol kalender bulan anak kontrol pemilih tanggal dan waktu.
void SetMonthCalFont(
HFONT hFont,
BOOL bRedraw = TRUE);
Parameter
hFont
Tangani ke font yang akan diatur.
bRedraw
Menentukan apakah kontrol harus digambar ulang segera setelah mengatur font. Mengatur parameter ini untuk TRUE
menyebabkan kontrol digambar ulang.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_SETMCFONT
Win32 , seperti yang dijelaskan dalam Windows SDK.
Contoh
// 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);
}
Catatan
Jika Anda menggunakan kode ini, Anda harus membuat anggota kelas turunan Anda CDialog
yang disebut m_MonthFont jenis CFont
.
CDateTimeCtrl::SetMonthCalStyle
Mengatur gaya kontrol kalender bulan drop-down yang terkait dengan kontrol pemilih tanggal dan waktu saat ini.
DWORD SetMonthCalStyle(DWORD dwStyle);
Parameter
dwStyle
[di] Gaya kontrol kalender bulan baru, yang merupakan kombinasi bitwise (OR) gaya kontrol kalender bulan. Untuk informasi selengkapnya, lihat Gaya Kontrol Kalender Bulan.
Tampilkan Nilai
Gaya kontrol kalender bulan drop-down sebelumnya.
Keterangan
Metode ini mengirim DTM_SETMCSTYLE
pesan, yang dijelaskan dalam Windows SDK.
Contoh
Contoh kode pertama mendefinisikan variabel, m_dateTimeCtrl
, yang digunakan untuk mengakses kontrol pemilih tanggal dan waktu secara terprogram. Variabel ini digunakan dalam contoh berikutnya.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
Contoh kode berikutnya mengatur kontrol pemilih tanggal dan waktu untuk menampilkan angka minggu, nama singkatan hari dalam seminggu, dan tidak ada indikator hari ini.
// 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
Mengatur waktu sistem minimum dan maksimum yang diizinkan untuk kontrol pemilih tanggal dan waktu.
BOOL SetRange(
const COleDateTime* pMinRange,
const COleDateTime* pMaxRange);
BOOL SetRange(
const CTime* pMinRange,
const CTime* pMaxRange);
Parameter
pMinRange
Penunjuk ke COleDateTime
objek atau objek yang CTime
berisi waktu paling awal yang diizinkan dalam CDateTimeCtrl
objek.
pMaxRange
Penunjuk ke COleDateTime
objek atau objek yang CTime
berisi waktu terbaru yang diizinkan dalam CDateTimeCtrl
objek.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_SETRANGE
Win32 , seperti yang dijelaskan dalam Windows SDK. Dalam implementasi MFC, Anda dapat menentukan salah satu COleDateTime
atau CTime
penggunaan. COleDateTime
Jika objek memiliki NULL
status, rentang akan dihapus. Jika penunjuk CTime
atau COleDateTime
penunjuk adalah NULL
, rentang akan dihapus.
Contoh
Lihat contoh untuk CDateTimeCtrl::GetRange
.
CDateTimeCtrl::SetTime
Mengatur waktu dalam kontrol pemilih tanggal dan waktu.
BOOL SetTime(const COleDateTime& timeNew);
BOOL SetTime(const CTime* pTimeNew);
BOOL SetTime(LPSYSTEMTIME pTimeNew = NULL);
Parameter
timeNew
Referensi ke objek yang COleDateTime
berisi tempat kontrol akan diatur.
pTimeNew
Pada versi kedua di atas, penunjuk ke objek yang CTime
berisi waktu di mana kontrol akan diatur. Pada versi ketiga di atas, penunjuk ke struktur yang SYSTEMTIME
berisi waktu di mana kontrol akan diatur.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Fungsi anggota ini mengimplementasikan perilaku pesan DTM_SETSYSTEMTIME
Win32 , seperti yang dijelaskan dalam Windows SDK. Dalam implementasi MFC , SetTime
Anda dapat menggunakan COleDateTime
kelas atau CTime
, atau Anda dapat menggunakan SYSTEMTIME
struktur, untuk mengatur informasi waktu.
Contoh
// 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));
Lihat juga
Sampel MFC CMNCTRL1
CWnd
Kelas
Bagan Hierarki
CMonthCalCtrl
Kelas