Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.
Az CMFCDesktopAlertWnd osztály egy mód nélküli párbeszédpanel működését valósítja meg, amely a képernyőn jelenik meg, hogy tájékoztassa a felhasználót egy eseményről.
További részletekért tekintse meg a Visual Studio-telepítés VC\atlmfc\src\mfc mappájában található forráskódot.
Szemantika
class CMFCDesktopAlertWnd : public CWnd
Tagok
Nyilvános metódusok
| Név | Description |
|---|---|
| CMFCDesktopAlertWnd::Létrehozás | Létrehozza és inicializálja az asztali riasztási ablakot. |
| CMFCDesktopAlertWnd::GetAnimationSpeed | Az animáció sebességét adja vissza. |
| CMFCDesktopAlertWnd::GetAnimationType | Az animáció típusát adja vissza. |
| CMFCDesktopAlertWnd::GetAutoCloseTime | Az automatikus bezárás időtúllépését adja vissza. |
| CMFCDesktopAlertWnd::GetCaptionHeight | A felirat magasságát adja vissza. |
| CMFCDesktopAlertWnd::GetDialogSize | |
| CMFCDesktopAlertWnd::GetLastPos | Az asztali riasztási ablak utolsó érvényes pozícióját adja vissza a képernyőn. |
| CMFCDesktopAlertWnd::GetTransparency | Az áttetszőségi szintet adja vissza. |
| CMFCDesktopAlertWnd::HasSmallCaption | Meghatározza, hogy az asztali riasztás ablaka kis felirattal jelenik-e meg. |
| CMFCDesktopAlertWnd::OnBeforeShow | |
| CMFCDesktopAlertWnd::OnClickLinkButton | A keretrendszer meghívta, amikor a felhasználó az asztali riasztás menüben található hivatkozás gombra kattint. |
| CMFCDesktopAlertWnd::OnCommand | A keretrendszer meghívja ezt a tagfüggvényt, amikor a felhasználó kiválaszt egy elemet egy menüből, amikor egy gyermekvezérlő értesítési üzenetet küld, vagy amikor egy gyorsítóbillentyűt lefordítanak. (Felülbírálja a CWnd::OnCommand.) |
| CMFCDesktopAlertWnd::OnDraw | |
| CMFCDesktopAlertWnd::P rocessCommand | |
| CMFCDesktopAlertWnd::SetAnimationSpeed | Beállítja az új animáció sebességét. |
| CMFCDesktopAlertWnd::SetAnimationType | Beállítja az animáció típusát. |
| CMFCDesktopAlertWnd::SetAutoCloseTime | Beállítja az automatikus bezárás időtúllépését. |
| CMFCDesktopAlertWnd::SetSmallCaption | Váltás a kis és a normál feliratok között. |
| CMFCDesktopAlertWnd::SetTransparency | Beállítja az áttetszőségi szintet. |
Megjegyzések
Az asztali riasztási ablak áttetsző lehet, animációs effektusokkal jelenhet meg, és eltűnhet (egy megadott késleltetés után, vagy ha a felhasználó bezárja a bezárás gombra kattintva).
Az asztali riasztási ablak tartalmazhat egy alapértelmezett párbeszédpanelt is, amely egy ikont, egy üzenetszöveget (egy címkét) és egy hivatkozást tartalmaz. Az asztali riasztási ablak az alkalmazás erőforrásaiból származó egyéni párbeszédpanelt is tartalmazhat.
Két lépésben hozhat létre egy asztali riasztási ablakot. Először hívja meg a konstruktort az CMFCDesktopAlertWnd objektum létrehozásához. Másodszor hívja meg a CMFCDesktopAlertWnd::Create member function to create the window and attach it to the CMFCDesktopAlertWnd object.
Az CMFCDesktopAlertWnd objektum létrehoz egy speciális gyermek párbeszédpanelt, amely kitölti az asztali riasztási ablak ügyfélterületét. A párbeszédpanel az összes rajta elhelyezett vezérlőt birtokolja.
Ha egyéni párbeszédpanelt szeretne megjeleníteni az előugró ablakban, kövesse az alábbi lépéseket:
Osztály származtatása a forrásból
CMFCDesktopAlertDialog.Gyermek párbeszédpanelsablon létrehozása az erőforrásokban.
A CMFCDesktopAlertWnd hívása::Létrehozás a párbeszédpanel-sablon erőforrás-azonosítójával és a származtatott osztály futtatókörnyezeti osztályadataira mutató mutatóval.
Programozza az egyéni párbeszédpanelt az üzemeltetett vezérlőkről érkező összes értesítés kezelésére, vagy az üzemeltetett vezérlők közvetlen kezelésére.
Az asztali riasztási ablak viselkedésének szabályozásához használja az alábbi függvényeket:
Állítsa be az animáció típusát a CMFCDesktopAlertWnd::SetAnimationType meghívásával. Az érvényes beállítások közé tartozik a kibontás, a dia és az elhalványulás.
Állítsa be az animációs keret sebességét a CMFCDesktopAlertWnd::SetAnimationSpeed hívásával.
Állítsa be az áttetszőségi szintet a CMFCDesktopAlertWnd::SetTransparency meghívásával.
Módosítsa a felirat méretét kicsire a CMFCDesktopAlertWnd::SetSmallCaption meghívásával. A kis felirat 7 képpont magas.
Example
Az alábbi példa bemutatja, hogyan konfigurálhat különböző metódusokat az CMFCDesktopAlertWnd osztályban egy CMFCDesktopAlertWnd objektum konfigurálásához. A példa bemutatja, hogyan állíthat be animációs típust, hogyan állíthatja be az előugró ablak átlátszóságát, hogyan adhatja meg, hogy a riasztási ablak megjelenítsen egy kis feliratot, és állítsa be a riasztási ablak automatikus bezárása előtt eltelt időt. A példa azt is bemutatja, hogyan hozhatja létre és inicializálhatja az asztali riasztási ablakot. Ez a kódrészlet az Asztali riasztások bemutató mintájának része.
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));
}
}
Öröklési hierarchia
Requirements
Fejléc: afxDesktopAlertWnd.h
CMFCDesktopAlertWnd::Létrehozás
Létrehozza és inicializálja az asztali riasztási ablakot.
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));
Paraméterek
pWndOwner
[be, ki] Megadja a riasztási ablak tulajdonosát. A tulajdonos ezután megkapja az asztali riasztási ablak összes értesítését. Ez az érték nem lehet NULL.
uiDlgResID
[in] Megadja a riasztási ablak erőforrás-azonosítóját.
hMenu
[in] Megadja azt a menüt, amely akkor jelenik meg, amikor a felhasználó a menügombra kattint. Null érték esetén a menügomb nem jelenik meg.
ptPos
[in] A riasztási ablak megjelenítésének kezdeti helyét adja meg képernyőkoordináták használatával. Ha ez a paraméter (-1, -1), a riasztási ablak a képernyő jobb alsó sarkában jelenik meg.
pRTIDlgBar
[in] A riasztási ablak ügyfélterületét lefedő egyéni párbeszédpanel-osztály futtatókörnyezeti osztályadatai.
params
[in] A riasztási ablak létrehozásához használt paramétereket adja meg.
Visszaadott érték
IGAZ, ha a riasztási ablak sikeresen létrejött; egyéb esetben HAMIS.
Megjegyzések
Hívja meg ezt a metódust egy riasztási ablak létrehozásához. A riasztási ablak ügyfélterülete tartalmaz egy gyermek párbeszédpanelt, amely a felhasználó számára megjelenített összes vezérlőt tartalmazza.
Az első metódus túlterhelése létrehoz egy riasztási ablakot, amely egy gyermek párbeszédpanelt tartalmaz, amely az alkalmazás erőforrásaiból töltődik be. Az első metódus túlterhelése is megadhat futásidejű osztályadatokat egy egyéni párbeszédpanel-osztályhoz.
A második metódus túlterhelése létrehoz egy riasztási ablakot, amely alapértelmezett vezérlőket tartalmaz. A CMFCDesktopAlertWndInfo osztály módosításával megadhatja, hogy mely vezérlők jelenjenek meg.
CMFCDesktopAlertWnd::GetAnimationSpeed
Az animáció sebességét adja vissza.
UINT GetAnimationSpeed() const;
Visszaadott érték
A riasztási ablak animációs sebessége ezredmásodpercben.
Megjegyzések
Az animáció sebessége azt ismerteti, hogy milyen gyorsan nyílik meg és záródik be a riasztási ablak.
CMFCDesktopAlertWnd::GetAnimationType
Az animáció típusát adja vissza.
CMFCPopupMenu::ANIMATION_TYPE GetAnimationType();
Visszaadott érték
Az alábbi animációs típusok egyike:
NO_ANIMATION
KIBONTAKOZNI
CSÚSZIK
FADE
SYSTEM_DEFAULT_ANIMATION
CMFCDesktopAlertWnd::GetAutoCloseTime
Az automatikus bezárás időtúllépését adja vissza.
int GetAutoCloseTime() const;
Visszaadott érték
Ezredmásodpercben megadott idő, amely után a riasztási ablak automatikusan bezárul.
Megjegyzések
Ezzel a módszerrel meghatározhatja, hogy mennyi idő telik el a riasztási ablak automatikus bezárása előtt.
CMFCDesktopAlertWnd::GetCaptionHeight
A felirat magasságát adja vissza.
virtual int GetCaptionHeight();
Visszaadott érték
A felirat magassága képpontban.
Megjegyzések
Ezt a metódust felül lehet bírálni egy származtatott osztályban. Az alapértelmezett megvalósítás a következő: a kis felirat magassági értékét (7 képpont) adja vissza, ha az előugró ablakban meg kell jelennie a kis feliratnak, vagy a Windows API függvényből GetSystemMetrics(SM_CYSMCAPTION)kapott értéknek.
CMFCDesktopAlertWnd::GetLastPos
Az asztali riasztási ablak utolsó pozícióját adja vissza a képernyőn.
CPoint GetLastPos() const;
Visszaadott érték
Pont a képernyő koordinátáiban.
Megjegyzések
Ez a metódus a riasztási ablak utolsó érvényes pozícióját adja vissza a képernyőn.
CMFCDesktopAlertWnd::GetTransparency
Az áttetszőségi szintet adja vissza.
BYTE GetTransparency() const;
Visszaadott érték
0 és 255 közötti átláthatósági szint, beleértve a 0 és 255 közötti értékeket is. Minél nagyobb az érték, annál átlátszatlanabb az ablak.
Megjegyzések
Ezzel a módszerrel lekérheti a riasztási ablak aktuális áttetszőségi szintjét.
CMFCDesktopAlertWnd::HasSmallCaption
Meghatározza, hogy az asztali riasztási ablak kis vagy normál méretű felirattal rendelkezik-e.
BOOL HasSmallCaption() const;
Visszaadott érték
IGAZ, ha az előugró ablak kis felirattal jelenik meg; HAMIS, ha az előugró ablak normál méretű felirattal jelenik meg.
Megjegyzések
Ezzel a módszerrel állapíthatja meg, hogy az előugró ablak kis felirattal vagy normál méretű felirattal rendelkezik-e. Alapértelmezés szerint a kis felirat 7 képpont magas. A normál méretű felirat magasságát a Windows API függvény GetSystemMetrics(SM_CYCAPTION)meghívásával szerezheti be.
CMFCDesktopAlertWnd::OnBeforeShow
virtual BOOL OnBeforeShow(CPoint&);
Paraméterek
[in] CPoint>
Visszaadott érték
Megjegyzések
CMFCDesktopAlertWnd::OnClickLinkButton
A keretrendszer meghívta, amikor a felhasználó az asztali riasztás menüben található hivatkozás gombra kattint.
virtual BOOL OnClickLinkButton(UINT uiCmdID);
Paraméterek
uiCmdID
[in] Ezt a paramétert nem használja a rendszer.
Visszaadott érték
Mindig HAMIS.
Megjegyzések
Bírálja felül ezt a metódust egy származtatott osztályban, ha értesítést szeretne kapni, ha egy felhasználó a riasztási ablakban a hivatkozásra kattint.
CMFCDesktopAlertWnd::OnCommand
virtual BOOL OnCommand(
WPARAM wParam,
LPARAM lParam);
Paraméterek
[in] wParam
[in] lParam
Visszaadott érték
Megjegyzések
CMFCDesktopAlertWnd::OnDraw
virtual void OnDraw(CDC* pDC);
Paraméterek
[in] Pdc
Megjegyzések
CMFCDesktopAlertWnd::P rocessCommand
BOOL ProcessCommand(HWND hwnd);
Paraméterek
[in] hwnd
Visszaadott érték
Megjegyzések
CMFCDesktopAlertWnd::SetAnimationSpeed
Beállítja az új animáció sebességét.
void SetAnimationSpeed(UINT nSpeed);
Paraméterek
nSpeed
[in] Ezredmásodpercben adja meg az új animáció sebességét.
Megjegyzések
Hívja meg ezt a metódust a riasztási ablak animációs sebességének beállításához. Az alapértelmezett animációs sebesség 30 ezredmásodperc.
CMFCDesktopAlertWnd::SetAnimationType
Beállítja az animáció típusát.
void SetAnimationType(CMFCPopupMenu::ANIMATION_TYPE type);
Paraméterek
type
[in] Megadja az animáció típusát.
Megjegyzések
Az animáció típusának beállításához hívja meg ezt a metódust. A következő értékek egyikét adhatja meg:
NO_ANIMATION
KIBONTAKOZNI
CSÚSZIK
FADE
SYSTEM_DEFAULT_ANIMATION
CMFCDesktopAlertWnd::SetAutoCloseTime
Beállítja az automatikus bezárás időtúllépését.
void SetAutoCloseTime(int nTime);
Paraméterek
nTime
[in] Ezredmásodpercben eltelt idő, mielőtt a riasztási ablak automatikusan bezárul.
Megjegyzések
A riasztási ablak automatikusan bezáródik a megadott idő után, ha a felhasználó nem használja az ablakot.
CMFCDesktopAlertWnd::SetSmallCaption
Váltás a kis méretű és a normál méretű feliratok között.
void SetSmallCaption(BOOL bSmallCaption = TRUE);
Paraméterek
bSmallCaption
[in] IGAZ érték annak megadásához, hogy a riasztási ablak megjelenítsen egy kis feliratot; ellenkező esetben HAMIS, ha meg szeretné adni, hogy a riasztási ablak normál méretű feliratot jelenítsen meg.
Megjegyzések
Ennek a metódusnak a meghívásával megjelenítheti a kis méretű vagy normál méretű feliratot. Alapértelmezés szerint a kis felirat 7 képpont magas. A normál felirat méretét a Windows API függvény GetSystemMetrics(SM_CYCAPTION)meghívásával szerezheti be.
CMFCDesktopAlertWnd::SetTransparency
Az előugró ablak áttetszőségi szintjét állítja be.
void SetTransparency(BYTE nTransparency);
Paraméterek
nTransparency
[in] Az áttetszőségi szintet adja meg. Ennek az értéknek 0 és 255 közöttinek kell lennie, beleértve az értéket is. Minél nagyobb az érték, annál átlátszatlanabb az ablak.
Megjegyzések
Hívja meg ezt a függvényt az előugró ablak áttetszőségi szintjének beállításához.
CMFCDesktopAlertWnd::GetDialogSize
virtual CSize GetDialogSize();
Visszaadott érték
Megjegyzések
Lásd még
hierarchiadiagram
osztályok
CMFCDesktopAlertWndInfo osztály
CMFCDesktopAlertDialog osztály
CWnd osztály