Partilhar via


COleControl::IsConvertingVBX

Allows especializou a carga de um controlador do OLE.

BOOL IsConvertingVBX( );

Valor de retorno

Diferente de zero se o controle está sendo convertido; se não 0.

Comentários

A o converter um formulário que usa controles de VBX a um que usar controladores OLE, o código especial de carregamento para controladores OLE pode ser necessário.Por exemplo, se você está carregando uma instância do seu controlador OLE, você pode ter uma chamada para PX_Font em seu DoPropExchange:

PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);

Entretanto, os controles de VBX não tivessem um objeto da fonte; cada propriedade de fonte foi salva individualmente.Em esse caso, você usaria IsConvertingVBX para distinguir entre esses dois casos:

if (!IsConvertingVBX())
{
   PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);
}
else
{
   PX_String(pPX, _T("FontName"), tempString, DefaultName);
   m_pMyFont->m_pFont->put_Name(tempString.AllocSysString());
   PX_Bool(pPX, _T("FontUnderline"), tempBool, DefaultValue);
   m_pMyFont->m_pFont->put_Underline(tempBool);
}

Outro caso eles seriam se o controle de VBX salvar dados binários proprietários (em seu manipulador de mensagem de VBM_SAVEPROPERTY ), e o controlador OLE salva os dados binários em um formato diferente.Se você desejar que o controlador para OLE trás- para ser compatível com o controle de VBX, você pode ler os formatos antigos e novos usando a função de IsConvertingVBX para distinguir se o controle de VBX o controlador ou OLE foram carregados.

Em a função de DoPropExchange do seu controle, você pode verificar essa condição e se verdadeiro, executa o código específico da carga de essa conversão (como os exemplos anteriores).Se o controle não está sendo convertido, você pode executar o código de carregamento normal.Esse recurso é aplicável somente aos controles que está sendo convertido de contrapartes de VBX.

Requisitos

Cabeçalho: afxctl.h

Consulte também

Referência

Classe de COleControl

Gráfico de hierarquia

COleControl::DoPropExchange