Classe CTabbedPane
Implementa a funcionalidade de um painel com guias desanexáveis.
Para obter mais detalhes, consulte o código-fonte localizado na pasta VC\atlmfc\src\mfc de sua instalação do Visual Studio.
Sintaxe
class CTabbedPane : public CBaseTabbedPane
Membros
Construtores públicos
Nome | Descrição |
---|---|
CTabbedPane::CTabbedPane |
Construtor padrão. |
Métodos públicos
Nome | Descrição |
---|---|
CTabbedPane::DetachPane | (Substitui CBaseTabbedPane::DetachPane.) |
CTabbedPane::EnableTabAutoColor | Habilita ou desabilita a coloração automática de guias. |
CTabbedPane::FloatTab | Faz com que um painel flutue, mas somente se, no momento, o painel residir em uma guia desanexável. (Substitui CBaseTabbedPane::FloatTab.) |
CTabbedPane::GetTabArea | Retorna o tamanho e a posição da área de tabulação dentro da janela com guias. |
CTabbedPane::GetTabWnd | |
CTabbedPane::HasAutoHideMode | Determina se o painel com guias pode ser alternado para o modo de ocultação automática. (Substitui CBaseTabbedPane::HasAutoHideMode.) |
CTabbedPane::IsTabLocationBottom | Determina se as guias estão localizadas na parte inferior da janela. |
CTabbedPane::ResetTabs | Redefine todos os painéis com guias para o estado padrão. |
CTabbedPane::SetTabAutoColors | Define uma lista de cores personalizadas que podem ser usadas quando o recurso de cor automática está habilitado. |
Membros de dados
Nome | Descrição |
---|---|
CTabbedPane::m_bTabsAlwaysTop | O local padrão para guias no aplicativo. |
CTabbedPane::m_pTabWndRTC | Informações de classe de runtime para um objeto derivado de CMFCTabCtrl personalizado. |
Comentários
A estrutura cria automaticamente uma instância dessa classe quando um usuário anexa um painel a outro apontando para a barra de título do segundo painel. Todos os painéis com guias criados pela estrutura têm uma ID de -1.
Para especificar guias regulares em vez de guias no estilo do Outlook, passe o estilo AFX_CBRS_REGULAR_TABS para o método CDockablePane::CreateEx.
Se você criar um painel com guias desanexáveis, o painel poderá ser destruído automaticamente pela estrutura, portanto, você não deve armazenar o ponteiro. Para obter um ponteiro para o painel com guias, chame o método CBasePane::GetParentTabbedPane
.
Exemplos
Neste exemplo, criamos um objeto CTabbedPane
. Em seguida, usamos CBaseTabbedPane::AddTab para anexar guias adicionais.
CTabbedPane* pTabbededBar = new CTabbedPane (TRUE);
if (!pTabbededBar->Create (_T(""),
this,
CRect (0,
0,
200,
200),
TRUE,
(UINT) -1,
WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS |
WS_CLIPCHILDREN | CBRS_LEFT |
CBRS_FLOAT_MULTI))
{
TRACE0("Failed to create Solution Explorer bar\n");
return FALSE; // fail to create
}
pTabbededBar->AddTab (&m_wndClassView);
pTabbededBar->AddTab (&m_wndResourceView);
pTabbededBar->AddTab (&m_wndFileView);
pTabbededBar->EnableDocking(CBRS_ALIGN_ANY);
DockPane(pTabbededBar);
Outra maneira de criar um objeto de barra de controle com guias é usar CDockablePane::AttachToTabWnd. O método AttachToTabWnd
cria dinamicamente um objeto de painel com guias usando informações de classe de runtime definidas por CDockablePane::SetTabbedPaneRTC.
Neste exemplo, criamos dinamicamente um painel com guias, anexamos duas guias e tornamos a segunda guia não desanexável.
DockPane(&m_wndClassView);
CTabbedPane* pTabbedBar = NULL;
m_wndResourceView.AttachToTabWnd (&m_wndClassView,
DM_SHOW,
TRUE,
(CDockablePane**) &pTabbedBar);
m_wndFileView.AttachToTabWnd (pTabbedBar,
DM_SHOW,
TRUE,
(CDockablePane**) &pTabbedBar);
pTabbedBar->GetUnderlyingWindow ()->EnableTabDetach (1,
FALSE);
Hierarquia de herança
Requisitos
Cabeçalho: afxTabbedPane.h
CTabbedPane::DetachPane
virtual BOOL DetachPane(
CWnd* pBar,
BOOL bHide = FALSE);
Parâmetros
[in] pBar
[in] bHide
Valor de retorno
Comentários
CTabbedPane::EnableTabAutoColor
Habilita ou desabilita a coloração automática de guias.
static void EnableTabAutoColor(BOOL bEnable = TRUE);
Parâmetros
bEnable
[in] TRUE para habilitar a coloração automática de guias; caso contrário, FALSE.
Comentários
Use este método estático para habilitar ou desabilitar a coloração automática de guias em todos os painéis com guias no aplicativo. Quando esse recurso está habilitado, cada guia é preenchida por sua própria cor. Você pode encontrar a lista de cores usadas para colorir as guias chamando o método CMFCBaseTabCtrl::GetAutoColors.
Você pode especificar a lista de cores que serão usadas para guias chamando CTabbedPane::SetTabAutoColors.
Por padrão, essa opção está desabilitada.
CTabbedPane::FloatTab
virtual BOOL FloatTab(
CWnd* pBar,
int nTabID,
AFX_DOCK_METHOD dockMethod,
BOOL bHide = FALSE);
Parâmetros
[in] pBar
[in] nTabID
[in] dockMethod
[in] bHide
Valor de retorno
Comentários
CTabbedPane::GetTabArea
Retorna o tamanho e a posição da área da guia na janela com guias.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
Parâmetros
rectTabAreaTop
[out] Contém o tamanho e a posição, em coordenadas de tela, da área da guia superior.
rectTabAreaBottom
[out] Contém o tamanho e a posição, em coordenadas de tela, da área da guia inferior.
Comentários
A estrutura chama esse método para determinar como encaixar um painel que um usuário está arrastando. Quando o usuário arrasta um painel sobre a área de tabulação do painel de destino, a estrutura tenta adicioná-lo como uma nova guia do painel de destino. Caso contrário, ele tenta encaixar o painel na lateral do painel de destino, que envolve a criação de um novo contêiner de painel com um divisor que separa os dois painéis.
Substitua esse método em uma classe derivada de CTabbedPane
para alterar esse comportamento.
CTabbedPane::GetTabWnd
CMFCTabCtrl* GetTabWnd() const;
Valor de retorno
Comentários
CTabbedPane::HasAutoHideMode
virtual BOOL HasAutoHideMode() const;
Valor de retorno
Comentários
CTabbedPane::IsTabLocationBottom
Determina se as guias estão localizadas na parte inferior da janela.
virtual BOOL IsTabLocationBottom() const;
Valor de retorno
TRUE se a área de tabulação estiver localizada na parte inferior da janela com guias; caso contrário, FALSE.
Comentários
CTabbedPane::m_bTabsAlwaysTop
O local padrão para guias no aplicativo.
AFX_IMPORT_DATA static BOOL m_bTabsAlwaysTop;
Comentários
Defina esse membro estático como TRUE para forçar que todas as guias no aplicativo sejam exibidas na parte superior do painel com guias.
Você deve definir esse valor antes que um painel com guias seja criado.
O valor padrão é FALSE.
CTabbedPane::m_pTabWndRTC
Informações de classe de runtime para um objeto derivado de CMFCTabCtrl
personalizado.
AFX_IMPORT_DATA static CRuntimeClass* m_pTabWndRTC;
Comentários
Defina essa variável de membro estático como um ponteiro para as informações de classe de runtime de um objeto derivado de CMFCTabCtrl
se você estiver usando uma janela personalizada com guias dentro de um painel com guias.
CTabbedPane::ResetTabs
Redefine todos os painéis com guias para o estado padrão.
static void ResetTabs();
Comentários
Chame esse método para reverter todos os painéis com guias para seu estado padrão. Quando chamado, esse método redefine os tamanhos da borda e o estado de cor automática de todos os painéis com guias.
CTabbedPane::SetTabAutoColors
Define uma lista de cores personalizadas usadas quando o recurso de cor automática está habilitado.
static void SetTabAutoColors(const CArray<COLORREF, COLORREF>& arColors);
Parâmetros
arColors
[in] Contém a matriz de cores a ser definida.
Comentários
Use esse método para personalizar a lista de cores usadas quando o recurso de cor automática estiver habilitado. Essa é uma função estática e afeta todos os painéis com guias em seu aplicativo.
Use CTabbedPane::EnableTabAutoColor para habilitar ou desabilitar o recurso de cor automática.
Confira também
Gráfico da hierarquia
Classes
Classe CDockablePane
Classe CBaseTabbedPane
Classe CMFCOutlookBar