Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
De CMFCDesktopAlertWnd klasse implementeert de functionaliteit van een modusloos dialoogvenster dat op het scherm wordt weergegeven om de gebruiker te informeren over een gebeurtenis.
Zie de broncode in de map VC\atlmfc\src\mfc van uw Visual Studio-installatie voor meer informatie.
Syntaxis
class CMFCDesktopAlertWnd : public CWnd
Leden
Openbare methoden
| Naam | Description |
|---|---|
| CMFCDesktopAlertWnd::Create | Hiermee maakt en initialiseert u het waarschuwingsvenster op het bureaublad. |
| CMFCDesktopAlertWnd::GetAnimationSpeed | Retourneert de animatiesnelheid. |
| CMFCDesktopAlertWnd::GetAnimationType | Retourneert het animatietype. |
| CMFCDesktopAlertWnd::GetAutoCloseTime | Retourneert de time-out voor automatisch sluiten. |
| CMFCDesktopAlertWnd::GetCaptionHeight | Retourneert de hoogte van het bijschrift. |
| CMFCDesktopAlertWnd::GetDialogSize | |
| CMFCDesktopAlertWnd::GetLastPos | Retourneert de laatste geldige positie van het bureaubladwaarschuwingsvenster op het scherm. |
| CMFCDesktopAlertWnd::GetTransparency | Retourneert het transparantieniveau. |
| CMFCDesktopAlertWnd::HasSmallCaption | Bepaalt of het waarschuwingsvenster op het bureaublad wordt weergegeven met het kleine bijschrift. |
| CMFCDesktopAlertWnd::OnBeforeShow | |
| CMFCDesktopAlertWnd::OnClickLinkButton | Aangeroepen door het framework wanneer de gebruiker op een koppelingsknop klikt in het waarschuwingsmenu op het bureaublad. |
| CMFCDesktopAlertWnd::OnCommand | Het framework roept deze lidfunctie aan wanneer de gebruiker een item in een menu selecteert, wanneer een onderliggend besturingselement een meldingsbericht verzendt of wanneer een toetsaanslag op een accelerator wordt vertaald. (Overschrijft CWnd::OnCommand.) |
| CMFCDesktopAlertWnd::OnDraw | |
| CMFCDesktopAlertWnd::P rocessCommand | |
| CMFCDesktopAlertWnd::SetAnimationSpeed | Hiermee stelt u de nieuwe animatiesnelheid in. |
| CMFCDesktopAlertWnd::SetAnimationType | Hiermee stelt u het animatietype in. |
| CMFCDesktopAlertWnd::SetAutoCloseTime | Hiermee stelt u de time-out voor automatisch sluiten in. |
| CMFCDesktopAlertWnd::SetSmallCaption | Schakelt tussen kleine en normale bijschriften. |
| CMFCDesktopAlertWnd::SetTransparency | Hiermee stelt u het transparantieniveau in. |
Opmerkingen
Een waarschuwingsvenster op het bureaublad kan transparant zijn, het kan worden weergegeven met animatie-effecten en kan verdwijnen (na een opgegeven vertraging of wanneer de gebruiker het sluit door op de knop Sluiten te klikken).
Een venster met bureaubladwaarschuwingen kan ook een standaarddialoogvenster bevatten dat op zijn beurt een pictogram, berichttekst (een label) en een koppeling bevat. U kunt ook een waarschuwingsvenster op het bureaublad een aangepast dialoogvenster van de resources van de toepassing bevatten.
U maakt in twee stappen een waarschuwingsvenster op het bureaublad. Roep eerst de constructor aan om het CMFCDesktopAlertWnd object te maken. Roep vervolgens de CMFCDesktopAlertWnd::Create member function aan om het venster te maken en deze aan het CMFCDesktopAlertWnd object te koppelen.
Het CMFCDesktopAlertWnd object maakt een speciaal onderliggend dialoogvenster dat het clientgebied van het bureaubladwaarschuwingsvenster vult. Het dialoogvenster is eigenaar van alle besturingselementen die erop staan.
Voer de volgende stappen uit om een aangepast dialoogvenster weer te geven in het pop-upvenster:
Een klasse afleiden van
CMFCDesktopAlertDialog.Een onderliggend dialoogvenstersjabloon maken in de resources.
Roep CMFCDesktopAlertWnd aan::Maak met behulp van de resource-id van de dialoogvenstersjabloon en een aanwijzer naar de runtimeklasse-informatie van de afgeleide klasse.
Programma het aangepaste dialoogvenster voor het afhandelen van alle meldingen die afkomstig zijn van de gehoste besturingselementen of programma de gehoste besturingselementen om deze meldingen rechtstreeks te verwerken.
Gebruik de volgende functies om het gedrag van het waarschuwingsvenster op het bureaublad te beheren:
Stel het animatietype in door CMFCDesktopAlertWnd::SetAnimationType aan te roepen. Geldige opties zijn ontvouwen, schuiven en vervagen.
Stel de animatieframesnelheid in door CMFCDesktopAlertWnd::SetAnimationSpeed aan te roepen.
Stel het transparantieniveau in door CMFCDesktopAlertWnd::SetTransparency aan te roepen.
Wijzig de grootte van het bijschrift in klein door CMFCDesktopAlertWnd::SetSmallCaption aan te roepen. Het kleine bijschrift is 7 pixels hoog.
Example
In het volgende voorbeeld ziet u hoe u verschillende methoden in de CMFCDesktopAlertWnd klasse gebruikt om een CMFCDesktopAlertWnd object te configureren. In het voorbeeld ziet u hoe u een animatietype instelt, de transparantie van het pop-upvenster instelt, opgeeft dat het waarschuwingsvenster een klein bijschrift weergeeft en de tijd instelt die is verstreken voordat het waarschuwingsvenster automatisch wordt gesloten. In het voorbeeld ziet u ook hoe u het waarschuwingsvenster voor het bureaublad maakt en initialiseert. Dit codefragment maakt deel uit van het voorbeeld van de desktopwaarschuwingsdemo.
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));
}
}
Overnamehiërarchie
Requirements
Header: afxDesktopAlertWnd.h
CMFCDesktopAlertWnd::Create
Hiermee maakt en initialiseert u het waarschuwingsvenster op het bureaublad.
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));
Parameterwaarden
pWndOwner
[in, uit] Hiermee geeft u de eigenaar van het waarschuwingsvenster. Deze eigenaar ontvangt vervolgens alle meldingen voor het waarschuwingsvenster op het bureaublad. Deze waarde kan niet NULL zijn.
uiDlgResID
[in] Hiermee geeft u de resource-id van het waarschuwingsvenster.
hMenu
[in] Hiermee geeft u het menu op dat wordt weergegeven wanneer de gebruiker op de menuknop klikt. Als NULL is, wordt de menuknop niet weergegeven.
ptPos
[in] Hiermee geeft u de initiële positie op waar het waarschuwingsvenster wordt weergegeven, met behulp van schermcoördinaten. Als deze parameter (-1, -1) is, wordt het waarschuwingsvenster weergegeven in de rechterbenedenhoek van het scherm.
pRTIDlgBar
[in] Informatie over runtimeklassen voor een aangepaste dialoogvensterklasse die het clientgebied van het waarschuwingsvenster bedekt.
params
[in] Hiermee geeft u parameters op die worden gebruikt om een waarschuwingsvenster te maken.
Retourwaarde
WAAR als het waarschuwingsvenster is gemaakt; anders, ONWAAR.
Opmerkingen
Roep deze methode aan om een waarschuwingsvenster te maken. Het clientgebied van het waarschuwingsvenster bevat een onderliggend dialoogvenster waarin alle besturingselementen worden gehost die aan de gebruiker worden weergegeven.
De eerste overbelasting van de methode maakt een waarschuwingsvenster met een onderliggend dialoogvenster dat wordt geladen vanuit de resources van de toepassing. De eerste overbelasting van de methode kan ook runtimeklasse-informatie opgeven voor een aangepaste dialoogvensterklasse.
Met de tweede overbelasting van de methode wordt een waarschuwingsvenster gemaakt dat standaardbesturingselementen bevat. U kunt opgeven welke besturingselementen moeten worden weergegeven door de CMFCDesktopAlertWndInfo-klasse te wijzigen.
CMFCDesktopAlertWnd::GetAnimationSpeed
Retourneert de animatiesnelheid.
UINT GetAnimationSpeed() const;
Retourwaarde
De animatiesnelheid van het waarschuwingsvenster, in milliseconden.
Opmerkingen
De animatiesnelheid beschrijft hoe snel het waarschuwingsvenster wordt geopend en gesloten.
CMFCDesktopAlertWnd::GetAnimationType
Retourneert het animatietype.
CMFCPopupMenu::ANIMATION_TYPE GetAnimationType();
Retourwaarde
Een van de volgende animatietypen:
NO_ANIMATION
ONTVOUWEN
DIA
FADE
SYSTEM_DEFAULT_ANIMATION
CMFCDesktopAlertWnd::GetAutoCloseTime
Retourneert de time-out voor automatisch sluiten.
int GetAutoCloseTime() const;
Retourwaarde
De tijd, in milliseconden, waarna het waarschuwingsvenster automatisch wordt gesloten.
Opmerkingen
Gebruik deze methode om te bepalen hoeveel tijd moet worden verstreken voordat het waarschuwingsvenster automatisch wordt gesloten.
CMFCDesktopAlertWnd::GetCaptionHeight
Retourneert de hoogte van het bijschrift.
virtual int GetCaptionHeight();
Retourwaarde
De hoogte, in pixels, van het bijschrift.
Opmerkingen
Deze methode kan worden overschreven in een afgeleide klasse. De standaardimplementatie: retourneert de waarde van de kleine bijschrifthoogte (7 pixels) als het pop-upvenster het kleine bijschrift moet weergeven of de waarde die is verkregen van de Windows API-functie GetSystemMetrics(SM_CYSMCAPTION).
CMFCDesktopAlertWnd::GetLastPos
Retourneert de laatste positie van het bureaubladwaarschuwingsvenster op het scherm.
CPoint GetLastPos() const;
Retourwaarde
Een punt, in schermcoördinaten.
Opmerkingen
Met deze methode wordt de laatste geldige positie van het waarschuwingsvenster op het scherm geretourneerd.
CMFCDesktopAlertWnd::GetTransparency
Retourneert het transparantieniveau.
BYTE GetTransparency() const;
Retourwaarde
Een transparantieniveau tussen 0 en 255, inclusief. Hoe groter de waarde, hoe ondoorzichtiger het venster.
Opmerkingen
Gebruik deze methode om het huidige transparantieniveau van het waarschuwingsvenster op te halen.
CMFCDesktopAlertWnd::HasSmallCaption
Bepaalt of het waarschuwingsvenster op het bureaublad een klein bijschrift of een bijschrift met een normale grootte heeft.
BOOL HasSmallCaption() const;
Retourwaarde
WAAR als het pop-upvenster wordt weergegeven met een klein bijschrift; ONWAAR als het pop-upvenster wordt weergegeven met een bijschrift van normale grootte.
Opmerkingen
Gebruik deze methode om te bepalen of het pop-upvenster een klein bijschrift of een bijschrift met een normale grootte heeft. Standaard is het kleine bijschrift 7 pixels hoog. U kunt de hoogte van het bijschrift met normale grootte verkrijgen door de Windows API-functie GetSystemMetrics(SM_CYCAPTION)aan te roepen.
CMFCDesktopAlertWnd::OnBeforeShow
virtual BOOL OnBeforeShow(CPoint&);
Parameterwaarden
[in] CPoint&
Retourwaarde
Opmerkingen
CMFCDesktopAlertWnd::OnClickLinkButton
Aangeroepen door het framework wanneer de gebruiker op een koppelingsknop klikt in het waarschuwingsmenu op het bureaublad.
virtual BOOL OnClickLinkButton(UINT uiCmdID);
Parameterwaarden
uiCmdID
[in] Deze parameter wordt niet gebruikt.
Retourwaarde
Altijd ONWAAR.
Opmerkingen
Overschrijf deze methode in een afgeleide klasse als u een melding wilt ontvangen wanneer een gebruiker op de koppeling in het waarschuwingsvenster klikt.
CMFCDesktopAlertWnd::OnCommand
virtual BOOL OnCommand(
WPARAM wParam,
LPARAM lParam);
Parameterwaarden
[in] wParam
[in] lParam
Retourwaarde
Opmerkingen
CMFCDesktopAlertWnd::OnDraw
virtual void OnDraw(CDC* pDC);
Parameterwaarden
[in] Pdc
Opmerkingen
CMFCDesktopAlertWnd::P rocessCommand
BOOL ProcessCommand(HWND hwnd);
Parameterwaarden
[in] Hwnd
Retourwaarde
Opmerkingen
CMFCDesktopAlertWnd::SetAnimationSpeed
Hiermee stelt u de nieuwe animatiesnelheid in.
void SetAnimationSpeed(UINT nSpeed);
Parameterwaarden
nSpeed
[in] Hiermee geeft u de nieuwe animatiesnelheid, in milliseconden.
Opmerkingen
Roep deze methode aan om de animatiesnelheid voor het waarschuwingsvenster in te stellen. De standaardanimatiesnelheid is 30 milliseconden.
CMFCDesktopAlertWnd::SetAnimationType
Hiermee stelt u het animatietype in.
void SetAnimationType(CMFCPopupMenu::ANIMATION_TYPE type);
Parameterwaarden
type
[in] Hiermee geeft u het animatietype op.
Opmerkingen
Roep deze methode aan om het animatietype in te stellen. U kunt een van de volgende waarden opgeven:
NO_ANIMATION
ONTVOUWEN
DIA
FADE
SYSTEM_DEFAULT_ANIMATION
CMFCDesktopAlertWnd::SetAutoCloseTime
Hiermee stelt u de time-out voor automatisch sluiten in.
void SetAutoCloseTime(int nTime);
Parameterwaarden
nTime
[in] De tijd, in milliseconden, die is verstreken voordat het waarschuwingsvenster automatisch wordt gesloten.
Opmerkingen
Het waarschuwingsvenster wordt automatisch gesloten na de opgegeven tijd als de gebruiker niet met het venster communiceert.
CMFCDesktopAlertWnd::SetSmallCaption
Schakelen tussen kleine en normale bijschriften.
void SetSmallCaption(BOOL bSmallCaption = TRUE);
Parameterwaarden
bSmallCaption
[in] WAAR om op te geven dat in het waarschuwingsvenster een klein bijschrift wordt weergegeven; anders is FALSE om op te geven dat in het waarschuwingsvenster een bijschrift met een normale grootte wordt weergegeven.
Opmerkingen
Roep deze methode aan om het kleine of normale bijschrift weer te geven. Standaard is het kleine bijschrift 7 pixels hoog. U kunt de grootte van het normale bijschrift verkrijgen door de Windows API-functie GetSystemMetrics(SM_CYCAPTION)aan te roepen.
CMFCDesktopAlertWnd::SetTransparency
Hiermee stelt u het transparantieniveau van het pop-upvenster in.
void SetTransparency(BYTE nTransparency);
Parameterwaarden
nTransparency
[in] Hiermee geeft u het transparantieniveau. Deze waarde moet tussen 0 en 255 liggen, inclusief. Hoe groter de waarde, hoe ondoorzichtiger het venster.
Opmerkingen
Roep deze functie aan om het transparantieniveau van het pop-upvenster in te stellen.
CMFCDesktopAlertWnd::GetDialogSize
virtual CSize GetDialogSize();
Retourwaarde
Opmerkingen
Zie ook
Hiërarchiegrafiek
Klassen
Klasse CMFCDesktopAlertWndInfo
Klasse CMFCDesktopAlertDialog
CWnd-klasse