CMFCDesktopAlertWnd osztály

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:

  1. Osztály származtatása a forrásból CMFCDesktopAlertDialog.

  2. Gyermek párbeszédpanelsablon létrehozása az erőforrásokban.

  3. 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.

  4. 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:

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

CObject

CCmdTarget

CWnd

CMFCDesktopAlertWnd

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