在网页中使用OCX时,可以使用PARAM,这时候在初始化时这些OCX的属性就会被设置, 如
<OBJECT ID=”abcd” WIDTH=500 HEIGHT=500
CLASSID=”CLSID:7B222D80-14C1-44CD-ABBB-45CDEE0E5E8E”
CODEBASE=”http://chenming/jkaraok.cab#Version=1,0,0,001″>
<PARAM NAME=”LyricFontName” VALUE=”隶书”>
<PARAM NAME=”LyricFontSize” VALUE=”18″>
<PARAM NAME=”LyricTextColor” VALUE=”255″>
<PARAM NAME=”LyricCurTextColor” VALUE=”16776960″>
<PARAM NAME=”WavForeColor” VALUE=”65280″>
</OBJECT>
如果这些属性的使用还要通过别的一些处理才能起到作用,那么就需要在PX_* 函数交换过数据后进行实际的一些处理工作:
void CJKaraOKCtrl::DoPropExchange(CPropExchange* pPX)
{
ExchangeVersion(pPX, MAKELONG(_wVerMinor, _wVerMajor));
COleControl::DoPropExchange(pPX);
// TODO: Call PX_ functions for each persistent custom property.
PX_Color(pPX, “LyricBackColor”, m_lyricBackColor, (DWORD)RGB(178, 198, 218));
PX_Short(pPX, “LyricLineHeight”, m_lyricLineHeight, 20);
PX_String(pPX, “LyricFontName”, m_lyricFontName, “宋体”);
……
if (pPX->IsLoading())
{
// 具体的一些处理工作
……
}
}