VS2010分割的视图基类为CScrollView,出现断言有关问题
VS2010分割的视图基类为CScrollView,出现断言问题
VS2010分割的视图基类为CScrollView,在调试时发现,如果程序运行时为最大化显示(VS2010程序会记录上次运行的时的状态,如果上次关闭时为最大化,则下次启动将会是最大化),就会出现断言问题:Error: must call SetScrollSizes() or SetScaleToFitSize(),跟进去发现view中先调用ONDRAW()函数,未调用OnInitialUpdate()就直接挂在断言处了。
但如果程序启动时不是最大化显示,就没问题。
请问这个问题怎么解决呀?谢谢!
------解决方案--------------------
在CScrollView的构造函数中:
增加SetScrollSizes函数的调用。
CTestMVView::CTestMVView()
{
// TODO: add construction code here
CSize sizeTotal;
// TODO: calculate the total size of this view
sizeTotal.cx = sizeTotal.cy = 100;
SetScrollSizes(MM_TEXT, sizeTotal);
}
试试看。
------解决方案--------------------
OnUpdate或者OnInitialUpdate()你调用SetScrollSize();
VS2010分割的视图基类为CScrollView,在调试时发现,如果程序运行时为最大化显示(VS2010程序会记录上次运行的时的状态,如果上次关闭时为最大化,则下次启动将会是最大化),就会出现断言问题:Error: must call SetScrollSizes() or SetScaleToFitSize(),跟进去发现view中先调用ONDRAW()函数,未调用OnInitialUpdate()就直接挂在断言处了。
但如果程序启动时不是最大化显示,就没问题。
请问这个问题怎么解决呀?谢谢!
------解决方案--------------------
在CScrollView的构造函数中:
增加SetScrollSizes函数的调用。
CTestMVView::CTestMVView()
{
// TODO: add construction code here
CSize sizeTotal;
// TODO: calculate the total size of this view
sizeTotal.cx = sizeTotal.cy = 100;
SetScrollSizes(MM_TEXT, sizeTotal);
}
试试看。
------解决方案--------------------
OnUpdate或者OnInitialUpdate()你调用SetScrollSize();