COleControl::IsConvertingVBX
Ermöglicht es spezialisierte Laden eines OLE-Steuerelements.
BOOL IsConvertingVBX( );
Rückgabewert
Ungleich 0 (null), wenn das Steuerelement konvertiert wird; andernfalls 0.
Hinweise
Wenn ein Formular konvertiert, das VBX-Steuerelemente bis eine verwendet, die OLE-Steuerelemente verwendet, ist möglicherweise spezieller Ladencode für die OLE-Steuerelemente erforderlich.Wenn Sie eine Instanz des OLE-Steuerelements laden, könnte ein Aufruf PX_Font im DoPropExchange:
PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);
jedoch hätten VBX-Steuerelemente kein Schriftartobjekt; jede Schriftarteigenschaft wurde einzeln gespeichert.In diesem Fall würden Sie IsConvertingVBX verwenden, um zwischen diesen beiden Fällen zu unterscheiden:
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);
}
Ein weiterer Fall wäre, wenn der VBX-Steuerelement proprietäre Binärdaten (in seinem VBM_SAVEPROPERTY Meldungshandler) gespeichert wurden, und das OLE-Steuerelement speichert die Binärdaten in einem anderen Format.Wenn Sie das OLE-Steuerelement mit dem VBX-Steuerelement abwärts kompatibel sein soll, können Sie die alten und neuen Stile mithilfe der IsConvertingVBX-Funktion lesen, indem Sie unterscheiden, ob das VBX-Steuerelement oder das OLE-Steuerelement geladen wurden.
In DoPropExchange-Funktion des Steuerelements können Sie diese Bedingung überprüfen und wenn ausrichten, führen Sie Lastcodebesonderen zu dieser Konvertierung aus (wie den vorherigen Beispielen).Wenn das Steuerelement nicht konvertiert wurde, können Sie Ladegewichtcode ausführen.Diese Fähigkeit ist an Steuerelemente nur angewendet werden, die von VBX-Entsprechungen konvertiert werden.
Anforderungen
Header: afxctl.h