当主窗口大小改变时,DirectShow视频窗口怎么保持长宽比

当主窗口大小改变时,DirectShow视频窗口如何保持长宽比?
如同影音风暴那样,有没有好的算法?

------解决方案--------------------
在窗口饿 WM_SIZE 事件里重新设置DirectShow视频窗口的位置和大小。
------解决方案--------------------

void CTHPlaySendView::OnSize(UINT nType, int cx, int cy)
{
CView::OnSize(nType, cx, cy);
if(theApp.m_bCoinitialize)
{
// 使其自适应窗体大小
CRect windowRect;
GetClientRect(windowRect);
m_pVW-> put_Left(0);
m_pVW-> put_Top(0);
m_pVW-> put_Width(windowRect.right - windowRect.left);
m_pVW-> put_Height(windowRect.bottom - windowRect.top);
m_pVW-> put_WindowStyle(WS_CHILD|WS_CLIPCHILDREN|WS_CLIPSIBLINGS);

// 显示VideoWindow
if (theApp.m_THViewWnd != NULL)
{
m_pVW-> put_Visible(OATRUE);
}
else
{
m_pVW-> put_Visible(OAFALSE);
}
}
}

和双杯献酒 说的意思一样!
不要多说了吧!
有人在做DirectShow的网络视频的M我 99592177 fyx0106411@hotmail.com fyx0106411@163.com 13868132042