无意中发现了CEditUI控件的另一个bug,当我给播放器的搜索栏获取焦点时,这时再改变窗体大小,原本搜索栏应该对应着也改变大小,却发现CEditUI内嵌的edit控件没有跟着改变(如下图),跟着调试了一段时间,发现是CEditUI类中的CEditWnd类的OnKillFocus函数中提前把m_pWindow指针赋值为NULL,导致CEditUI在调整控件位置时误以为edit控件还没创建,解决办法是注释掉OnKillFocus函数中把m_pWindow指针赋值为NULL的代码。
bug修复前,明显看到edit控件没有跟着自动调节大小:
bug修复后,这是会自动调整edit的大小
2014.7.15 8:08 Redrain