该如何正确地动态修改尺寸?

朱标 发布于 2014/10/21 13:47
阅读 677
收藏 0

@wangchyz 你好,想跟你请教个问题:

xml:

....

              <Container name="test">
                <Container name="现场拍照"
                                     textspeak="请注意调整拍摄头像在屏幕绿色方框内,确认无误后请点击屏幕下方拍照按钮"
                                     s_id="P4CameraModule" s_order="0" s_timeout="30" >
                  <Container float="true" pos="118,48,0,0"   width="265" height="192" >
                    <HorizontalLayout bkcolor="#FF09223c" >
                      <Container  width="5" bkcolor="#FF220033"/>
                      <Container  bkcolor="#FF660033"/>
                      <Container  width="5" bkcolor="#FF220033"/>
                    </HorizontalLayout>
                  </Container>
                  <Button name="takephoto" event="ExcOrder" text="拍照"  float="true" pos="118,243,0,0"   width="100" height="15"  textcolor="#FF105ea9"  font="6" align="center" bkcolor="#FF092282"  keepIt="true"/>
                  <Button name="nextstep" event="流程" text="下一步"  float="true" pos="283,243,0,0"   width="100" height="15"  textcolor="#FF105ea9"  font="6" align="center"
                          enable="false" />
                </Container>
              </Container>

.....

cpp:

 CControlUI*pConCtrl = static_cast<CControlUI*>(pPaintManager->FindControl(_T("takephoto")));
if(pConCtrl == NULL)
return;
int nH = pConCtrl->GetFixedHeight();
pConCtrl->SetFixedHeight(nH/rcHscale);

结果界面没有变化^

加载中
0
朱标
好吧,自己解决了,duilib的继承关系导致的,不应该继承CControlUI类,这个类对绘图方面处理不足,同时因为这个原因产生一堆BUG,只要把所有空间由 继承 CControlUI类改成继承CContainerUI类,然后把虚函数 virtual SIZE GetScrollPos() const; virtual SIZE GetScrollRange() const;改成函数,之后就没事了
返回顶部
顶部