Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Nota
Pustaka Microsoft Foundation Classes (MFC) terus didukung. Namun, kami tidak lagi menambahkan fitur atau memperbarui dokumentasi.
Kelas CMFCDesktopAlertWnd mengimplementasikan fungsionalitas kotak dialog tanpa mode yang muncul di layar untuk memberi tahu pengguna tentang suatu peristiwa.
Untuk detail selengkapnya, lihat kode sumber yang terletak di folder VC\atlmfc\src\mfc dari penginstalan Visual Studio Anda.
Sintaks
class CMFCDesktopAlertWnd : public CWnd
Anggota
Metode Publik
| Nama | Deskripsi |
|---|---|
| CMFCDesktopAlertWnd::Create | Membuat dan menginisialisasi jendela pemberitahuan desktop. |
| CMFCDesktopAlertWnd::GetAnimationSpeed | Mengembalikan kecepatan animasi. |
| CMFCDesktopAlertWnd::GetAnimationType | Mengembalikan jenis animasi. |
| CMFCDesktopAlertWnd::GetAutoCloseTime | Mengembalikan batas waktu tutup otomatis. |
| CMFCDesktopAlertWnd::GetCaptionHeight | Mengembalikan tinggi keterangan. |
| CMFCDesktopAlertWnd::GetDialogSize | |
| CMFCDesktopAlertWnd::GetLastPos | Mengembalikan posisi terakhir yang valid dari jendela pemberitahuan desktop pada layar. |
| CMFCDesktopAlertWnd::GetTransparency | Mengembalikan tingkat transparansi. |
| CMFCDesktopAlertWnd::HasSmallCaption | Menentukan apakah jendela pemberitahuan desktop ditampilkan dengan keterangan kecil. |
| CMFCDesktopAlertWnd::OnBeforeShow | |
| CMFCDesktopAlertWnd::OnClickLinkButton | Dipanggil oleh kerangka kerja saat pengguna mengklik tombol tautan yang terletak di menu pemberitahuan desktop. |
| CMFCDesktopAlertWnd::OnCommand | Kerangka kerja memanggil fungsi anggota ini saat pengguna memilih item dari menu, saat kontrol anak mengirim pesan pemberitahuan, atau ketika penekanan tombol akselerator diterjemahkan. (Penimpaan CWnd::OnCommand.) |
| CMFCDesktopAlertWnd::OnDraw | |
| CMFCDesktopAlertWnd::P rocessCommand | |
| CMFCDesktopAlertWnd::SetAnimationSpeed | Mengatur kecepatan animasi baru. |
| CMFCDesktopAlertWnd::SetAnimationType | Mengatur tipe animasi. |
| CMFCDesktopAlertWnd::SetAutoCloseTime | Mengatur batas waktu tutup otomatis. |
| CMFCDesktopAlertWnd::SetSmallCaption | Beralih antara keterangan kecil dan normal. |
| CMFCDesktopAlertWnd::SetTransparency | Mengatur tingkat transparansi. |
Keterangan
Jendela pemberitahuan desktop dapat transparan, dapat muncul dengan efek animasi, dan dapat menghilang (setelah penundaan yang ditentukan atau ketika pengguna menutupnya dengan mengklik tombol tutup).
Jendela pemberitahuan desktop juga dapat berisi dialog default yang pada gilirannya berisi ikon, teks pesan (label), dan tautan. Atau, jendela pemberitahuan desktop dapat berisi dialog kustom dari sumber daya aplikasi.
Anda membuat jendela pemberitahuan desktop dalam dua langkah. Pertama, panggil konstruktor untuk membuat CMFCDesktopAlertWnd objek. Kedua, panggil fungsi anggota CMFCDesktopAlertWnd::Create untuk membuat jendela dan melampirkannya ke CMFCDesktopAlertWnd objek.
Objek CMFCDesktopAlertWnd membuat kotak dialog anak khusus yang mengisi area klien dari jendela pemberitahuan desktop. Dialog memiliki semua kontrol yang diposisikan di atasnya.
Untuk menampilkan kotak dialog kustom pada jendela popup, ikuti langkah-langkah berikut:
Mendapatkan kelas dari
CMFCDesktopAlertDialog.Buat templat kotak dialog anak di sumber daya.
Panggil CMFCDesktopAlertWnd::Buat menggunakan ID sumber daya templat kotak dialog dan penunjuk ke informasi kelas runtime kelas turunan.
Program kotak dialog kustom untuk menangani semua pemberitahuan yang berasal dari kontrol yang dihosting, atau program kontrol yang dihosting untuk menangani pemberitahuan ini secara langsung.
Gunakan fungsi berikut untuk mengontrol perilaku jendela pemberitahuan desktop:
Atur jenis animasi dengan memanggil CMFCDesktopAlertWnd::SetAnimationType. Opsi yang valid termasuk buka, geser, dan pudar.
Atur kecepatan bingkai animasi dengan memanggil CMFCDesktopAlertWnd::SetAnimationSpeed.
Atur tingkat transparansi dengan memanggil CMFCDesktopAlertWnd::SetTransparency.
Ubah ukuran keterangan menjadi kecil dengan memanggil CMFCDesktopAlertWnd::SetSmallCaption. Keterangan kecil tingginya 7 piksel.
Contoh
Contoh berikut menggambarkan cara menggunakan berbagai metode di CMFCDesktopAlertWnd kelas untuk mengonfigurasi CMFCDesktopAlertWnd objek. Contoh menunjukkan cara mengatur jenis animasi, mengatur transparansi jendela pop-up, menentukan bahwa jendela pemberitahuan menampilkan keterangan kecil, dan mengatur waktu yang berlalu sebelum jendela pemberitahuan ditutup secara otomatis. Contoh ini juga menunjukkan cara membuat dan menginisialisasi jendela pemberitahuan desktop. Cuplikan kode ini adalah bagian dari sampel Demo Pemberitahuan Desktop.
CMFCDesktopAlertWnd *pPopup = new CMFCDesktopAlertWnd;
// int m_nAnimation
pPopup->SetAnimationType((CMFCPopupMenu::ANIMATION_TYPE)m_nAnimation);
// int m_nAnimationSpeed
pPopup->SetAnimationSpeed(m_nAnimationSpeed);
// int m_nTransparency
pPopup->SetTransparency((BYTE)m_nTransparency);
// BOOL m_bSmallCaption
pPopup->SetSmallCaption(m_bSmallCaption);
// BOOL m_bAutoClose, int m_nAutoCloseTime
pPopup->SetAutoCloseTime(m_bAutoClose ? m_nAutoCloseTime * 1000 : 0);
// int m_nPopupSource
if (m_nPopupSource == 0)
{
// int m_nVisualMngr
// CPoint m_ptPopup
// The this pointer points to a CDesktopAlertDemoDlg class which extends the CDialogEx class.
if (m_nVisualMngr == 5) // MSN-style
{
pPopup->Create(this, IDD_DIALOG2, NULL,
m_ptPopup, RUNTIME_CLASS(CMSNDlg));
}
else
{
pPopup->Create(this, IDD_DIALOG1,
m_menuPopup.GetSubMenu(0)->GetSafeHmenu(),
m_ptPopup, RUNTIME_CLASS(CMyPopupDlg));
}
}
Hierarki Warisan
Persyaratan
Header: afxDesktopAlertWnd.h
CMFCDesktopAlertWnd::Create
Membuat dan menginisialisasi jendela pemberitahuan desktop.
virtual BOOL Create(
CWnd* pWndOwner,
UINT uiDlgResID,
HMENU hMenu = NULL,
CPoint ptPos = CPoint(-1,-1),
CRuntimeClass* pRTIDlgBar = RUNTIME_CLASS(CMFCDesktopAlertDialog));
virtual BOOL Create(
CWnd* pWndOwner,
CMFCDesktopAlertWndInfo& params,
HMENU hMenu = NULL,
CPoint ptPos = CPoint(-1,-1));
Parameter
pWndOwner
[masuk, keluar] Menentukan pemilik jendela pemberitahuan. Pemilik tersebut kemudian akan menerima semua pemberitahuan untuk jendela pemberitahuan desktop. Nilai ini tidak boleh NULL.
uiDlgResID
[di] Menentukan ID sumber daya jendela pemberitahuan.
hMenu
[di] Menentukan menu yang ditampilkan ketika pengguna mengklik tombol menu. Jika NULL, tombol menu tidak ditampilkan.
ptPos
[di] Menentukan posisi awal tempat jendela pemberitahuan ditampilkan, menggunakan koordinat layar. Jika parameter ini adalah (-1, -1), jendela pemberitahuan ditampilkan di sudut kanan bawah layar.
pRTIDlgBar
[di] Informasi kelas runtime untuk kelas kotak dialog kustom yang mencakup area klien jendela pemberitahuan.
params
[di] Menentukan parameter yang digunakan untuk membuat jendela pemberitahuan.
Tampilkan Nilai
TRUE jika jendela pemberitahuan berhasil dibuat; jika tidak, FALSE.
Keterangan
Panggil metode ini untuk membuat jendela pemberitahuan. Area klien jendela pemberitahuan berisi kotak dialog anak yang menghosting semua kontrol yang ditampilkan kepada pengguna.
Kelebihan beban metode pertama membuat jendela pemberitahuan yang berisi kotak dialog anak yang dimuat dari sumber daya aplikasi. Overload metode pertama juga dapat menentukan informasi kelas runtime untuk kelas kotak dialog kustom.
Kelebihan beban metode kedua membuat jendela pemberitahuan yang berisi kontrol default. Anda dapat menentukan kontrol mana yang akan ditampilkan dengan memodifikasi Kelas CMFCDesktopAlertWndInfo.
CMFCDesktopAlertWnd::GetAnimationSpeed
Mengembalikan kecepatan animasi.
UINT GetAnimationSpeed() const;
Tampilkan Nilai
Kecepatan animasi jendela pemberitahuan, dalam milidetik.
Keterangan
Kecepatan animasi menjelaskan seberapa cepat jendela pemberitahuan terbuka dan ditutup.
CMFCDesktopAlertWnd::GetAnimationType
Mengembalikan jenis animasi.
CMFCPopupMenu::ANIMATION_TYPE GetAnimationType();
Tampilkan Nilai
Salah satu jenis animasi berikut:
NO_ANIMATION
TERUNGKAP
SLIDE
LAYU
SYSTEM_DEFAULT_ANIMATION
CMFCDesktopAlertWnd::GetAutoCloseTime
Mengembalikan batas waktu tutup otomatis.
int GetAutoCloseTime() const;
Tampilkan Nilai
Waktu, dalam milidetik, setelah itu jendela pemberitahuan akan ditutup secara otomatis.
Keterangan
Gunakan metode ini untuk menentukan berapa banyak waktu yang harus berlalu sebelum jendela pemberitahuan akan ditutup secara otomatis.
CMFCDesktopAlertWnd::GetCaptionHeight
Mengembalikan tinggi keterangan.
virtual int GetCaptionHeight();
Tampilkan Nilai
Tinggi, dalam piksel, dari keterangan.
Keterangan
Metode ini dapat ditimpa dalam kelas turunan. Implementasi default baik: mengembalikan nilai tinggi keterangan kecil (7 piksel) jika jendela popup harus menampilkan keterangan kecil, atau nilai yang diperoleh dari fungsi GetSystemMetrics(SM_CYSMCAPTION)Windows API .
CMFCDesktopAlertWnd::GetLastPos
Mengembalikan posisi terakhir jendela pemberitahuan desktop pada layar.
CPoint GetLastPos() const;
Tampilkan Nilai
Titik, dalam koordinat layar.
Keterangan
Metode ini mengembalikan posisi terakhir yang valid dari jendela pemberitahuan di layar.
CMFCDesktopAlertWnd::GetTransparency
Mengembalikan tingkat transparansi.
BYTE GetTransparency() const;
Tampilkan Nilai
Tingkat transparansi antara 0 dan 255, inklusif. Semakin besar nilainya, semakin buram jendela.
Keterangan
Gunakan metode ini untuk mengambil tingkat transparansi jendela pemberitahuan saat ini.
CMFCDesktopAlertWnd::HasSmallCaption
Menentukan apakah jendela pemberitahuan desktop memiliki keterangan kecil atau keterangan ukuran reguler.
BOOL HasSmallCaption() const;
Tampilkan Nilai
TRUE jika jendela popup ditampilkan dengan keterangan kecil; FALSE jika jendela popup ditampilkan dengan keterangan berukuran reguler.
Keterangan
Gunakan metode ini untuk menentukan apakah jendela popup memiliki keterangan kecil atau keterangan ukuran reguler. Secara default, keterangan kecil tingginya 7 piksel. Anda dapat memperoleh tinggi keterangan ukuran reguler dengan memanggil fungsi GetSystemMetrics(SM_CYCAPTION)Windows API .
CMFCDesktopAlertWnd::OnBeforeShow
virtual BOOL OnBeforeShow(CPoint&);
Parameter
[di] CPoint&
Tampilkan Nilai
Keterangan
CMFCDesktopAlertWnd::OnClickLinkButton
Dipanggil oleh kerangka kerja saat pengguna mengklik tombol tautan yang terletak di menu pemberitahuan desktop.
virtual BOOL OnClickLinkButton(UINT uiCmdID);
Parameter
uiCmdID
[di] Parameter ini tidak digunakan.
Tampilkan Nilai
Selalu FALSE.
Keterangan
Ambil alih metode ini di kelas turunan jika Anda ingin diberi tahu saat pengguna mengklik tautan di jendela pemberitahuan.
CMFCDesktopAlertWnd::OnCommand
virtual BOOL OnCommand(
WPARAM wParam,
LPARAM lParam);
Parameter
[di] wParam
[di] lParam
Tampilkan Nilai
Keterangan
CMFCDesktopAlertWnd::OnDraw
virtual void OnDraw(CDC* pDC);
Parameter
[di] pDC
Keterangan
CMFCDesktopAlertWnd::P rocessCommand
BOOL ProcessCommand(HWND hwnd);
Parameter
[di] hwnd
Tampilkan Nilai
Keterangan
CMFCDesktopAlertWnd::SetAnimationSpeed
Mengatur kecepatan animasi baru.
void SetAnimationSpeed(UINT nSpeed);
Parameter
nSpeed
[di] Menentukan kecepatan animasi baru, dalam milidetik.
Keterangan
Panggil metode ini untuk mengatur kecepatan animasi untuk jendela pemberitahuan. Kecepatan animasi default adalah 30 milidetik.
CMFCDesktopAlertWnd::SetAnimationType
Mengatur tipe animasi.
void SetAnimationType(CMFCPopupMenu::ANIMATION_TYPE type);
Parameter
jenis
[di] Menentukan tipe animasi.
Keterangan
Panggil metode ini untuk mengatur tipe animasi. Anda dapat menentukan salah satu nilai berikut:
NO_ANIMATION
TERUNGKAP
SLIDE
LAYU
SYSTEM_DEFAULT_ANIMATION
CMFCDesktopAlertWnd::SetAutoCloseTime
Mengatur batas waktu tutup otomatis.
void SetAutoCloseTime(int nTime);
Parameter
nTime
[di] Waktu, dalam milidetik, yang berlalu sebelum jendela pemberitahuan secara otomatis ditutup.
Keterangan
Jendela pemberitahuan ditutup secara otomatis setelah waktu yang ditentukan jika pengguna tidak berinteraksi dengan jendela.
CMFCDesktopAlertWnd::SetSmallCaption
Beralih antara keterangan ukuran kecil dan reguler.
void SetSmallCaption(BOOL bSmallCaption = TRUE);
Parameter
bSmallCaption
[di] TRUE untuk menentukan bahwa jendela pemberitahuan menampilkan keterangan kecil; jika tidak, FALSE untuk menentukan bahwa jendela pemberitahuan menampilkan keterangan ukuran reguler.
Keterangan
Panggil metode ini untuk menampilkan keterangan ukuran kecil atau reguler. Secara default, keterangan kecil tingginya 7 piksel. Anda dapat memperoleh ukuran keterangan reguler dengan memanggil fungsi GetSystemMetrics(SM_CYCAPTION)WINDOWS API .
CMFCDesktopAlertWnd::SetTransparency
Mengatur tingkat transparansi jendela popup.
void SetTransparency(BYTE nTransparency);
Parameter
nTransparency
[di] Menentukan tingkat transparansi. Nilai ini harus antara 0 dan 255, inklusif. Semakin besar nilainya, semakin buram jendela.
Keterangan
Panggil fungsi ini untuk mengatur tingkat transparansi jendela popup.
CMFCDesktopAlertWnd::GetDialogSize
virtual CSize GetDialogSize();
Tampilkan Nilai
Keterangan
Lihat juga
Bagan Hierarki
Kelas
Kelas CMFCDesktopAlertWndInfo
Kelas CMFCDesktopAlertDialog
Kelas CWnd