void CMarketQuotes::OnSize(UINT nType, int cx, int cy)
{
// TODO: 在此处添加消息处理程序代码
        CDockablePane::OnSize(nType, cx, cy);
ChangeExpondStyle();
}void CMarketQuotes::ChangeExpondStyle()
{
if (GetSafeHwnd() == NULL)
{
return;
}
CRect rect;
GetClientRect(rect); int colume = m_lList.GetHeaderCtrl()->GetItemCount();
if (colume == 0)
{
return;
}
int width = (rect.Width()-14)/colume; for (int i = 0; i< colume;i++)
{
m_lList.SetColumnWidth(i,width);
}
m_lList.SetWindowPos(NULL, rect.left, rect.top, rect.Width(), rect.Height(), SWP_NOACTIVATE | SWP_NOZORDER);
}怎样实现在拖动过程中不改变大小,只有当停止拖动,鼠标左键弹起时改变窗口大小
左键弹起OnsizeCDockablePane改变大小

解决方案 »

  1.   

    别在Onmousemove里面改变大小
    在onlbuttonup里面响应呗
      

  2.   

    不是这样子的, 这样子不可以实现,当你拖动边框的时候,鼠标的mouseMove 和 ButtonUp 是被忽视的,不知道怎样实现, 看起来不好解决, 有什么消息可以监控 当完成鼠标拖动边框这个动作 的函数或者事件的  求大神们解决啊     分  不是问题哦
      

  3.   

    我知道 我想在想实现动态的CLISTCTRL 里面的 列宽, 但是我想在拖动边框的时候先不要改变, 当拖动这个动作完成以后 再改变CLISTCTRL 里面的列宽, 现在的问题是你改变边框的大小 是在ONsize里面实现的 这是系统的函数, 在此过程中我如果改变我的列宽,会感觉很卡