Bubba, if your using some version of direct3d for your map, then you probably don't want to use CScrollView, because it scrolls using the gdi function. Instead, you could use CViow, and intercept the scroll events. You might then somehow move the observer to the left or the right inside your world. But I don't know how you'd do that exactly.
Also, the creation of CScrollView is managed by mfc. Inside of InitInstance of your application class, you want to add a document template, like this:
Code:
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CMyTestDoc),
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CMyView));
if (!pDocTemplate)
return FALSE;
AddDocTemplate(pDocTemplate);
Then, MFC is able to create an object of the view class, somehow from the RUNTIME_CLASS(CMyView). If your changing all your view types, from CView to CScrollView, you have to be careful to update all the mfc dynamic creation macros inside the clas and inside the implementation file. This is quite tedious; so if you know your using a CScrollView it's better to use the AppWizard and change the view class to CScrollView.