Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de 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.
Een deelvenster met tabbladen met het visuele uiterlijk van het navigatiedeelvenster in Microsoft Outlook 2000 of Outlook 2003. Het CMFCOutlookBar object bevat een CMFCOutlookBarTabCtrl-klasseobject en een reeks tabbladen. De tabbladen kunnen CMFCOutlookBarPane Class-objecten of CWnd-afgeleide objecten zijn. Voor de gebruiker wordt de Outlook-balk weergegeven als een reeks knoppen en een weergavegebied. Wanneer de gebruiker op een knop klikt, wordt het bijbehorende besturingselement of knopvenster weergegeven.
Syntaxis
class CMFCOutlookBar : public CBaseTabbedPane
Leden
Openbare constructors
| Naam | Description |
|---|---|
CMFCOutlookBar::CMFCOutlookBar |
Standaardconstructor. |
CMFCOutlookBar::~CMFCOutlookBar |
Destructor. |
Openbare methoden
| Naam | Description |
|---|---|
| CMFCOutlookBar::AllowDestroyEmptyTabbedPane | Hiermee geeft u op of een leeg deelvenster met tabbladen kan worden vernietigd. (Overschrijft CBaseTabbedPane::AllowDestroyEmptyTabbedPane.) |
| CMFCOutlookBar::CanAcceptPane | Bepaalt of een ander deelvenster kan worden gekoppeld aan het Outlook-balkvenster. (Overschrijft CDockablePane::CanAcceptPane.) |
| CMFCOutlookBar::CanSetCaptionTextToTabName | Bepaalt of het bijschrift voor het deelvenster met tabbladen dezelfde tekst weergeeft als het actieve tabblad. (Hiermee wordt CBaseTabbedPane::CanSetCaptionTextToTabName overschreven.) |
| CMFCOutlookBar::Maken | Hiermee maakt u het besturingselement van de Outlook-balk. |
| CMFCOutlookBar::CreateCustomPage | Hiermee maakt u een aangepast outlook-balktabblad. |
CMFCOutlookBar::CreateObject |
Wordt door het framework gebruikt om een dynamisch exemplaar van dit klassetype te maken. |
| CMFCOutlookBar::D oesAllowDynInsertBefore | Bepaalt of een gebruiker een besturingsbalk aan de buitenrand van de Outlook-balk kan docken. |
| CMFCOutlookBar::FloatTab | Hiermee wordt een deelvenster zwevend, maar alleen als het deelvenster zich momenteel op een loskoppelbaar tabblad bevindt. (Overschrijft CBaseTabbedPane::FloatTab.) |
| CMFCOutlookBar::GetButtonsFont | Retourneert het lettertype van de tekst op de knoppen van de Outlook-balk. |
| CMFCOutlookBar::GetTabArea | Retourneert de grootte en positie van de tabbladgebieden op de Outlook-balk. (Overschrijft CBaseTabbedPane::GetTabArea.) |
CMFCOutlookBar::GetThisClass |
Wordt door het framework gebruikt om een aanwijzer te verkrijgen naar het CRuntimeClass-object dat is gekoppeld aan dit klassetype. |
| CMFCOutlookBar::IsMode2003 | Bepaalt of het gedrag van de Outlook-balk dat van Microsoft Office Outlook 2003 nabootst (zie Opmerkingen). |
| CMFCOutlookBar::OnAfterAnimation | Aangeroepen door CMFCOutlookBarTabCtrl::SetActiveTab nadat het actieve tabblad is ingesteld met behulp van animatie. |
| CMFCOutlookBar::OnBeforeAnimation | Aangeroepen door CMFCOutlookBarTabCtrl::SetActiveTab voordat een tabbladpagina is ingesteld als het actieve tabblad met behulp van animatie. |
| CMFCOutlookBar::OnScroll | Aangeroepen door het framework als de Outlook-balk omhoog of omlaag schuift. |
| CMFCOutlookBar::RemoveCustomPage | Hiermee verwijdert u een aangepast outlook-balktabblad. |
| CMFCOutlookBar::SetButtonsFont | Hiermee stelt u het lettertype van de tekst in op de knoppen van de Outlook-balk. |
| CMFCOutlookBar::SetMode2003 | Hiermee geeft u op of het gedrag van de Outlook-balk die van Outlook 2003 nabootst (zie Opmerkingen). |
Opmerkingen
Zie het OutlookDemo-voorbeeld: MFC OutlookDemo-toepassing voor een voorbeeld van een Outlook-balk.
De Outlook-balk implementeren
Voer de volgende stappen uit om het CMFCOutlookBar besturingselement in uw toepassing te gebruiken:
CMFCOutlookBarEen object insluiten in de hoofdframevensterklasse.class CMainFrame : public CMDIFrameWnd { // ... CMFCOutlookBar m_wndOutlookBar; CMFCOutlookBarPane m_wndOutlookPane; // ... };Wanneer u het WM_CREATE bericht in het hoofdframe verwerkt, roept u de methode CMFCOutlookBar::Create aan om het tabblad van Outlook te maken.
m_wndOutlookBar.Create (_T("Shortcuts"), this, CRect (0, 0, 100, 100), ID_VIEW_OUTLOOKBAR, WS_CHILD | WS_VISIBLE | CBRS_LEFT);Haal een aanwijzer naar de onderliggende
CMFCOutlookBarTabCtrlwaarde met behulp van CBaseTabbedPane::GetUnderlyingWindow.CMFCOutlookBarTabCtrl* pOutlookBar = (CMFCOutlookBarTabCtrl*) m_wndOutlookBar.GetUnderlyingWindow ();Maak een CMFCOutlookBarPane Class-object voor elk tabblad met knoppen.
m_wndOutlookPane.Create(&m_wndOutlookBar, AFX_DEFAULT_TOOLBAR_STYLE, ID_OUTLOOK_PANE_GENERAL, AFX_CBRS_FLOAT | AFX_CBRS_RESIZE); // make the Outlook pane detachable (enable docking) m_wndOutlookPane.EnableDocking(CBRS_ALIGN_ANY); // add buttons m_wndOutlookPane.AddButton(theApp.LoadIcon (IDR_MAINFRAME), "About", ID_APP_ABOUT); m_wndOutlookPane.AddButton (theApp.LoadIcon (IDR_CUSTOM_OPEN_ICON), "Open", ID_FILE_OPEN);Roep CMFCOutlookBarTabCtrl::AddTab aan om elk nieuw tabblad toe te voegen. Stel de parameter bDetachable in op FALSE om een pagina niet-ontkoppelbaar te maken. Of gebruik CMFCOutlookBarTabCtrl::AddControl om loskoppelbare pagina's toe te voegen.
pOutlookBar->AddTab (&m_wndOutlookPane, "General", (UINT) -1, TRUE);Als u een
CWnd-afgeleide besturingselement (bijvoorbeeld CMFCShellTreeCtrl-klasse) wilt toevoegen als tabblad, maakt u het besturingselement en roept u CMFCOutlookBarTabCtrl::AddTab toe om dit toe te voegen aan de Outlook-balk.
Opmerking
U moet unieke besturingselement-id's gebruiken voor elk CMFCOutlookBarPane Class-object en voor elk CWnd-afgeleide object.
Als u tijdens runtime dynamisch nieuwe pagina's wilt toevoegen of verwijderen, gebruikt u CMFCOutlookBar::CreateCustomPage en CMFCOutlookBar::RemoveCustomPage.
Outlook 2003-modus
In de outlook 2003-modus worden de tabknoppen onder aan het deelvenster van de Outlook-balk geplaatst. Wanneer er onvoldoende ruimte is om de knoppen weer te geven, worden ze weergegeven als pictogrammen in een werkbalkachtig gebied onderaan het deelvenster.
Gebruik CMFCOutlookBar::SetMode2003 om de Outlook 2003-modus in te schakelen. Gebruik CMFCOutlookBarTabCtrl::SetToolbarImageList om de bitmap in te stellen die de pictogrammen bevat die onder aan de Outlook-balk worden weergegeven. De pictogrammen in de bitmap moeten worden geordend op tabindex.
Overnamehiërarchie
Requirements
Koptekst: afxoutlookbar.h
CMFCOutlookBar::AllowDestroyEmptyTabbedPane
Hiermee geeft u op of een leeg deelvenster met tabbladen kan worden vernietigd.
virtual BOOL AllowDestroyEmptyTabbedPane() const;
Retourwaarde
WAAR als een leeg deelvenster met tabbladen kan worden vernietigd; anders, ONWAAR. De standaard implementatie retourneert altijd TRUE.
Opmerkingen
Als een leeg deelvenster met tabbladen niet kan worden vernietigd, verbergt het framework het in plaats daarvan.
CMFCOutlookBar::CanAcceptPane
Bepaalt of een ander deelvenster kan worden gekoppeld aan het Outlook-balkvenster.
virtual BOOL CanAcceptPane(const CBasePane* pBar) const;
Parameterwaarden
pBar
[in] Een aanwijzer naar een ander deelvenster dat wordt gekoppeld aan dit deelvenster.
Retourwaarde
WAAR als een ander deelvenster kan worden gekoppeld aan het Outlook-balkvenster; anders ONWAAR.
Opmerkingen
Als de Outlook-balk zich in de Outlook 2003-modus bevindt, wordt docking niet ondersteund, dus de retourwaarde is FALSE.
Als de parameter pBar NULL is, retourneert deze methode FALSE.
Anders gedraagt deze methode zich als de basismethode CBasePane::CanAcceptPane, behalve dat, zelfs als docking niet is ingeschakeld, een Outlook-balk nog steeds een Outlook-balk kan worden vastgezet.
CMFCOutlookBar::CanSetCaptionTextToTabName
Bepaalt of het bijschrift voor het deelvenster met tabbladen dezelfde tekst weergeeft als het actieve tabblad.
virtual BOOL CanSetCaptionTextToTabName() const;
Retourwaarde
WAAR als het bijschrift van het Outlook-balkvenster automatisch is ingesteld op de tekst van het actieve tabblad; anders ONWAAR.
Opmerkingen
Gebruik CBaseTabbedPane::EnableSetCaptionTextToTabName om deze functionaliteit in of uit te schakelen.
In de Outlook 2003-modus is deze instelling altijd ingeschakeld.
CMFCOutlookBar::Maken
Hiermee maakt u het besturingselement van de Outlook-balk.
virtual BOOL Create(
LPCTSTR lpszCaption,
CWnd* pParentWnd,
const RECT& rect,
UINT nID,
DWORD dwStyle,
DWORD dwControlBarStyle=AFX_CBRS_RESIZE,
CCreateContext* pContext=NULL);
Parameterwaarden
lpszCaption
[in] Hiermee geeft u het bijschrift van het venster.
pParentWnd
[in] Hiermee geeft u een aanwijzer naar een bovenliggend venster. Deze mag niet NULL zijn.
Rect
[in] Hiermee geeft u de grootte en positie van de Outlook-balk op in pixels.
nID
[in] Hiermee geeft u de besturingselement-id. Moet verschillen van andere besturings-id's die in de toepassing worden gebruikt.
dwStyle
[in] Hiermee geeft u de gewenste stijl van de besturingsbalk op. Zie Vensterstijlen voor mogelijke waarden.
dwControlBarStyle
[in] Hiermee geeft u de speciale bibliotheek gedefinieerde stijlen.
pContext-
[in] Context maken.
Retourwaarde
Niet-nul als de methode is geslaagd; anders 0.
Opmerkingen
U maakt een CMFCOutlookBar object in twee stappen. Roep eerst de constructor aan en roep Createvervolgens het outlook-balk besturingselement aan en koppelt het aan het CMFCOutlookBar object.
Zie CBasePane::CreateEx voor de lijst met beschikbare door de bibliotheek gedefinieerde stijlen die moeten worden opgegeven door dwControlBarStyle.
Example
In het volgende voorbeeld ziet u hoe u de Create methode van de CMFCOutlookBar klasse gebruikt. Dit codefragment maakt deel uit van het outlook-voorbeeld met meerdere weergaven.
CMFCOutlookBar m_wndShortcutsBar;
// int nInitialWidth
// CString strCaption
if (!m_wndShortcutsBar.Create(strCaption, this,
CRect(0, 0, nInitialWidth, nInitialWidth),
ID_VIEW_OUTLOOKBAR, WS_CHILD | WS_VISIBLE | CBRS_LEFT))
{
TRACE0("Failed to create outlook bar\n");
return FALSE; // fail to create
}
CMFCOutlookBar::CreateCustomPage
Hiermee maakt u een aangepast outlook-balktabblad.
CMFCOutlookBarPane* CreateCustomPage(
LPCTSTR lpszPageName,
BOOL bActivatePage=TRUE,
DWORD dwEnabledDocking=CBRS_ALIGN_ANY,
BOOL bEnableTextLabels=TRUE);
Parameterwaarden
lpszPageName
[in] Het paginalabel.
bActivatePage
[in] Indien WAAR, wordt de pagina actief bij het maken.
dwEnabledDocking
[in] Een combinatie van CBRS_ALIGN_ vlaggen waarmee de ingeschakelde dockingkanten worden opgegeven wanneer de pagina wordt losgekoppeld.
bEnableTextLabels
[in] Als WAAR is, worden de tekstlabels ingeschakeld voor de knoppen die zich op de pagina bevinden.
Retourwaarde
Een aanwijzer naar de zojuist gemaakte pagina of NULL als het maken is mislukt.
Opmerkingen
Gebruik deze methode om de gebruikers in staat te stellen aangepaste Outlook-balkpagina's te maken. U kunt maximaal 100 pagina's per toepassing maken. De paginabeheer-id's beginnen vanaf 0xF000. Het maken mislukt als het totale aantal aangepaste Outlook-balkpagina's groter is dan 100.
Gebruik CMFCOutlookBar::RemoveCustomPage om aangepaste pagina's te verwijderen.
CMFCOutlookBar::D oesAllowDynInsertBefore
Hiermee geeft u op of een gebruiker een deelvenster aan de buitenrand van de Outlook-balk kan koppelen.
DECLARE_MESSAGE_MAP virtual BOOL DoesAllowDynInsertBefore() const;
Retourwaarde
De standaard implementatie retourneert FALSE.
Opmerkingen
Het framework roept de DoesAllowDynInsertBefore methode aan wanneer wordt gezocht naar een locatie om een dynamisch deelvenster te docken. Als de functie FALSE retourneert, staat het framework het koppelen van een dynamisch deelvenster aan de buitenranden van het deelvenster niet toe.
Meestal maakt u een Outlook-balk als een statisch niet-zwevend besturingselement. U kunt deze functie in een afgeleide klasse overschrijven en WAAR retourneren om dit gedrag te wijzigen.
Opmerking
Omdat dynamische deelvensters de status van gedokte statische deelvensters controleren wanneer ze worden gekoppeld, moet u dynamische deelvensters indien mogelijk docken na statische deelvensters.
CMFCOutlookBar::FloatTab
Hiermee wordt een deelvenster zwevend.
virtual BOOL FloatTab(
CWnd* pBar,
int nTabID,
AFX_DOCK_METHOD dockMethod,
BOOL bHide);
Parameterwaarden
pBar
[in] Een aanwijzer naar het deelvenster om te zweven.
nTabID
[in] De op nul gebaseerde index van het tabblad om te zweven.
dockMethod
[in] Hiermee geeft u de methode op die moet worden gebruikt om het deelvenster te laten zweven. Zie CBaseTabbedPane::FloatTab voor meer informatie.
bHide
[in] WAAR om het deelvenster te verbergen voordat het zwevend is; anders, ONWAAR. In tegenstelling tot de basisklasseversie van deze methode heeft deze parameter geen standaardwaarde.
Retourwaarde
WAAR als het deelvenster zwevend is; anders, ONWAAR.
Opmerkingen
Deze methode is vergelijkbaar met CBaseTabbedPane::FloatTab , behalve dat het laatste resterende tabblad op een Outlook-balkbesturingselement niet kan zweven.
CMFCOutlookBar::GetButtonsFont
Retourneert het lettertype van de tekst op de paginaknoptabbladen van de Outlook-balk.
CFont* GetButtonsFont() const;
Retourwaarde
Een aanwijzer naar het lettertypeobject dat wordt gebruikt om tekst weer te geven op de tabbladen van de outlook-balkpagina.
Opmerkingen
Gebruik deze functie om het lettertype op te halen dat wordt gebruikt om de tekst weer te geven op de tabbladen van de outlook-paginaknop. U kunt het lettertype instellen door CMFCOutlookBar::SetButtonsFont aan te roepen.
CMFCOutlookBar::GetTabArea
Bepaalt de grootte en positie van de tabbladgebieden op de Outlook-balk.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
Parameterwaarden
rectTabAreaTop
[uit] Bevat de grootte en positie (in de clientcoördinaten) van het bovenste tabbladgebied wanneer de functie wordt geretourneerd.
rectTabAreaBottom
[uit] Bevat de grootte en positie (in de clientcoördinaten) van het onderste tabbladgebied wanneer de functie wordt geretourneerd.
Opmerkingen
In het framework wordt deze methode aangeroepen om het type docking naar het doelvenster te bepalen. Wanneer het framework bepaalt dat de gebruiker het deelvenster sleept om over het tabbladgebied van het doelvenster te worden gedokt, wordt geprobeerd het eerste deelvenster toe te voegen als een nieuw tabblad van het doelvenster. Anders wordt geprobeerd het eerste deelvenster aan een geschikte kant van het doelvenster te docken. Het framework maakt een nieuwe container met een schuifregelaar voor het extra gedokte deelvenster.
De standaard implementatie van GetTabArea retourneert het hele clientgebied van de Outlook-balk als de Outlook-balk statisch is. Dat wil gezegd, als de Outlook-balk niet kan zweven. Anders wordt het gebied geretourneerd dat paginaknoppen boven en onder aan het besturingselement van de Outlook-balk nemen.
Overschrijf deze methode in klasse die is afgeleid van CMFCOutlookBar het wijzigen van dit gedrag.
CMFCOutlookBar::IsMode2003
Hiermee geeft u op of het gedrag van de Outlook-balk dat van Microsoft Office Outlook 2003 nabootst.
BOOL IsMode2003() const;
Retourwaarde
Niet-nul als de Outlook-balk wordt uitgevoerd in de Microsoft Office 2003-modus; anders 0.
Opmerkingen
U kunt deze modus inschakelen met behulp van CMFCOutlookBar::SetMode2003.
CMFCOutlookBar::OnAfterAnimation
Aangeroepen door CMFCOutlookBarTabCtrl::SetActiveTab nadat het actieve tabblad is ingesteld met behulp van animatie.
virtual void OnAfterAnimation(int nPage);
Parameterwaarden
nPagina
[in] De op nul gebaseerde index van de tabbladpagina die actief is gemaakt.
Opmerkingen
Het visuele effect van het instellen van het actieve tabblad is afhankelijk van of u animatie hebt ingeschakeld. Zie CMFCOutlookBarTabCtrl::EnableAnimation voor meer informatie.
CMFCOutlookBar::OnBeforeAnimation
Aangeroepen door CMFCOutlookBarTabCtrl::SetActiveTab voordat een tabbladpagina is ingesteld als het actieve tabblad met behulp van animatie.
virtual BOOL OnBeforeAnimation(int nPage);
Parameterwaarden
nPagina
[in] De op nul gebaseerde index van de tabbladpagina die op het punt staat actief te worden ingesteld.
Retourwaarde
Retourneert TRUE als animatie moet worden gebruikt bij het instellen van het nieuwe actieve tabblad of ONWAAR als animatie moet worden uitgeschakeld.
Opmerkingen
CMFCOutlookBar::OnScroll
Aangeroepen door het framework als de Outlook-balk omhoog of omlaag schuift.
virtual void OnScroll(BOOL bDown);
Parameterwaarden
bDown
[in] WAAR als de Outlook-balk omlaag schuift of ONWAAR als deze omhoog schuift.
Opmerkingen
CMFCOutlookBar::RemoveCustomPage
Hiermee verwijdert u een aangepaste tabbladpagina van de Outlook-balk.
BOOL RemoveCustomPage(
UINT uiPage,
CMFCOutlookBarTabCtrl* pTargetWnd);
Parameterwaarden
uiPage
[in] Op nul gebaseerde index van de pagina in het bovenliggende Outlook-venster.
pTargetWnd
[in] Wijs het bovenliggende Outlook-venster aan.
Retourwaarde
Niet-nul als de aangepaste pagina is verwijderd; anders 0.
Opmerkingen
Roep deze functie aan om aangepaste pagina's te verwijderen. Wanneer de pagina wordt verwijderd, wordt de besturings-id geretourneerd naar de groep beschikbare id's.
U moet een aanwijzer opgeven voor het CMFCOutlookBarTabCtrl-klasseobject waarin de pagina zich momenteel bevindt. Een gebruiker kan loskoppelbare pagina's verplaatsen tussen verschillende Outlook-balken, maar de informatie over een aangepaste pagina bevindt zich in het Outlook-balkobject waarvoor u CMFCOutlookBar::CreateCustomPage hebt genoemd.
Gebruik CBaseTabbedPane::GetUnderlyingWindow om een aanwijzer naar het Outlook-venster te krijgen.
CMFCOutlookBar::SetButtonsFont
Hiermee stelt u het lettertype van de tekst in op de knoppen van de Outlook-balk.
void SetButtonsFont(
CFont* pFont,
BOOL bRedraw=TRUE);
Parameterwaarden
pFont
[in] Hiermee geeft u het nieuwe lettertype.
bRedraw
[in] Als WAAR is, wordt de Outlook-balk opnieuw getekend.
Opmerkingen
Gebruik deze methode om een lettertype in te stellen voor de tekst die wordt weergegeven op de knoppen op de outlook-tabbladpagina.
CMFCOutlookBar::SetMode2003
Hiermee geeft u op of het gedrag van de Outlook-balk dat van Outlook 2003 nabootst.
void SetMode2003(BOOL bMode2003=TRUE);
Parameterwaarden
bMode2003
[in] Als WAAR is, is de Office 2003-modus ingeschakeld.
Opmerkingen
Gebruik deze functie om de Office 2003-modus in of uit te schakelen. In deze modus heeft de Outlook-balk een extra werkbalk met een aanpassingsknop. Het gedrag van de Outlook-balk voldoet aan het gedrag van de Outlook-balk in Microsoft Office 2003.
Deze modus is standaard uitgeschakeld.
Opmerking
Deze functie moet worden aangeroepen vóór CMFCOutlookBar::Create.
Zie ook
Hiërarchiegrafiek
Klassen
Klasse CBaseTabbedPane
CMFCOutlookBarTabCtrl-klasse
Klasse CMFCOutlookBarPane