描述:
用MFC Appliwizzard OCX编写 控件,如何设定其初始大小?
甚至做出固定大小的控件。就是展现给客户(容器)的时候,
我的控件可以实时控制最小尺寸,能固定就最方便了。
解决方案1:
可以在onsize函数中用moveto(大概是这个函数,名字类似,移动窗口用的)。我认为如果在网页或应用程序中使用的话,大可以让做网页的或编程的人设计控件的大小,如果你强行设计了大小,会对后期使用造成影响
解决方案2: void CTestctlView::OnSize(UINT nType, int cx, int cy)
{
CView::OnSize(nType, cx, cy);
COleClientItem* pActiveItem = GetDocument()->GetInPlaceActiveItem(this);
if (pActiveItem != NULL)
pActiveItem->SetItemRects();
if(m_bDraw)m_Show3dctl1.MoveWindow(0,0,cx,cy,true);
}
void CShow3dctl1Ctrl::OnSize(UINT nType, int cx, int cy)
{
COleControl::OnSize(nType, cx, cy);
// TODO: Add your message handler code here
FireReSize((short)cx,(short)cy);
m_icx = cx;
m_icy = cy;
Env.WinViewX = cx;
Env.WinViewY = cy;
}
SetInitialSize()