| 
			  nMax = SCROLL_MAX(si); // 滾動條滑塊左端最多只能滾動到nMax處而非si.nMax處, si.nMax是對於滾動條滑塊右端來說的。另外, 當垂直滾動條消失時, 該值還會減小,因為此時si.nPage的值會增大
 /*
 // 小實驗:
 //    如果強行用SetScrollPos設置超過SCROLL_MAX但小於si.nMax的值
 //    那麼在GetScrollPos的時候得到的值會自動減小為SCROLL_MAX
 //  這說明si.nMax是一個虛值,滾動條的位置根本就不可能到達該值,最大只能到達SCROLL_MAX
 case WM_LBUTTONDOWN:
 si.cbSize = sizeof(SCROLLINFO);
 si.fMask = SIF_ALL;
 GetScrollInfo(hWnd, SB_HORZ, &si);
 nMax = SCROLL_MAX(si);
 nNewPos = nMax + 10;
 SetScrollPos(hWnd, SB_HORZ, nNewPos, TRUE);
 nMax = GetScrollPos(hWnd, SB_HORZ);
 sprintf_s(text, "setpos: %d, getpos: %d, si.nMax = %d", nNewPos, nMax, si.nMax);
 SetWindowTextA(hWnd, text);
 break;*/
 |