IamYanggq 2017-07-14 03:36 采纳率: 50%
浏览 2337
已采纳

DUILIB 如何删除控件啊?

我使用Delete()程序会崩溃。最后发现在

```for( int it1 = 0; it1 < m_items.GetSize(); it1++ ) {
CControlUI* pControl = static_cast(m_items[it1]);
if( !pControl->IsVisible() ) continue;
if( pControl->IsFloat() ) continue;
szControlAvailable = szAvailable;
RECT rcPadding = pControl->GetPadding();
szControlAvailable.cy -= rcPadding.top + rcPadding.bottom;
iControlMaxWidth = pControl->GetFixedWidth();
iControlMaxHeight = pControl->GetFixedHeight();
if (iControlMaxWidth <= 0) iControlMaxWidth = pControl->GetMaxWidth();
if (iControlMaxHeight <= 0) iControlMaxHeight = pControl->GetMaxHeight();
if (szControlAvailable.cx > iControlMaxWidth) szControlAvailable.cx = iControlMaxWidth;
if (szControlAvailable.cy > iControlMaxHeight) szControlAvailable.cy = iControlMaxHeight;
SIZE sz = { 0 };
if (pControl->GetFixedWidth() == 0) {
nAdjustables++;
sz.cy = pControl->GetFixedHeight();
}
else {
sz = pControl->EstimateSize(szControlAvailable);
if (sz.cx == 0) {
nAdjustables++;
}
else {
if (sz.cx < pControl->GetMinWidth()) sz.cx = pControl->GetMinWidth();
if (sz.cx > pControl->GetMaxWidth()) sz.cx = pControl->GetMaxWidth();
}
}

        cxFixed += sz.cx + pControl->GetPadding().left + pControl->GetPadding().right;

        sz.cy = MAX(sz.cy, 0);
        if( sz.cy < pControl->GetMinHeight() ) sz.cy = pControl->GetMinHeight();
        if( sz.cy > pControl->GetMaxHeight() ) sz.cy = pControl->GetMaxHeight();
        cyNeeded = MAX(cyNeeded, sz.cy + rcPadding.top + rcPadding.bottom);
        nEstimateNum++;
    }
for循环中的第1个判断崩溃,而第一句话pControl的结果全是乱码

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-07-14 11:53
    关注

    Remove,RemoveAll方法,文档里有

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog