近日需要在MFC中的MDI中使用帶滾動條的視圖。找了許久發現其實很簡單
1、用基類 CScrollView 生成新視圖:CNewView
2、修改MFC自動生的 CNewView::OnInitialUpdate()
原內容爲:
void CNewView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
CSize sizeTotal;
// TODO: .....
sizeTotal.cx = sizeTotal.cy = 100; // 這裏設置的是默認的滾動條的大小的值
SetScrollSizes(MM_TEXT, sizeTotal); // 設置滾動條
}
因此,只需根據需要重新設置 sizeTotal 的值就可以顯示和使用滾動條了。例如:
CSize sizeTotal = CSize (100, 100000);
CSize sizePage = CSize (100, 100);
CSize sizeLine = CSize (100, 10);
SetScrollSizes (MM_TEXT, sizeTotal, sizePage, sizeLine);