一个对话框中,m_dgrid为一个DataGrid 控件.此例中控件的大小为对话框的80%,并居中显示。
void CTestDlg::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);
// TODO: Add your message handler code here
static i=0;
if(i)
{
m_dgrid.MoveWindow(cx*0.1,cy*0.1,cx*0.8,cy*0.8) ;
}
else
i++;
}
void CTestDlg::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);
// TODO: Add your message handler code here
static i=0;
if(i)
{
m_dgrid.MoveWindow(cx*0.1,cy*0.1,cx*0.8,cy*0.8) ;
}
else
i++;
}
else
i=1;
/*i++可能会带来问题*/
RECT rc;
GetClientRect(&rc);
m_dgrid.MoveWindow(&rc);
加断点发现:m_dgrid.MoveWindow(cx*0.1,cy*0.1,cx*0.8,cy*0.8) 出问题
请问,为什么?
void CDataBaseDlg::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);
if(m_DataGrid.m_hWnd)
{
m_DataGrid.MoveWindow(0,40,cx,cy) ;
}
}