level 12
rabbitbride
楼主
艹,累死人不偿命。这里感谢我的老师:baidu~ google~
或许是本人比较笨,每成功一点点,就像一个人在翻越一座大山。
离山远的时候,还不觉得高,越近越发现,自己面对的是何等的高度~~。哎。
1、布局如下:(这里用到的是CSplitterWnd m_wndSplitter;)

2、我想实现的是:
点button1,打开自定义dcm文件夹;点button2,在右边显示dcm图像堆栈。
3、button1的实现:
(直接上代码)
TCHAR szPath[_MAX_PATH];
BROWSEINFO bi;
bi.hwndOwner=m_hWnd;
bi.pidlRoot=NULL;
bi.lpszTitle=_T("选择DICOM文件夹:");
bi.pszDisplayName=szPath;
bi.ulFlags=BIF_RETURNONLYFSDIRS;
bi.lpfn=NULL;
bi.lParam=NULL;
LPITEMIDLIST pItemIDList=SHBrowseForFolder(&bi);
if(pItemIDList)
{TCHAR szPath[_MAX_PATH];
if(SHGetPathFromIDList(pItemIDList,szPath))
{
m_path=szPath;
UpdateData(FALSE);
}
IMalloc* pMalloc;
if(SHGetMalloc(&pMalloc)!=NOERROR)
{TRACE(_T("无法取得外壳程序的接口\n"));}
pMalloc->Free(pItemIDList);
if(pMalloc)pMalloc->Release();
}
//AfxMessageBox(m_path);
if (m_path==""){MessageBox("请确认路径是否有效!");return;}
else
{
reader->SetDataByteOrderToLittleEndian();
reader->SetDirectoryName(m_path);
reader->SetDataSpacing (3.2,3.2, 2.5);
reader->Update();
MessageBox("文件打开成功!文件路径为:"+m_path+";确定后可进行下一步操作!");
}
2012年06月14日 04点06分
1
或许是本人比较笨,每成功一点点,就像一个人在翻越一座大山。
离山远的时候,还不觉得高,越近越发现,自己面对的是何等的高度~~。哎。
1、布局如下:(这里用到的是CSplitterWnd m_wndSplitter;)

2、我想实现的是:点button1,打开自定义dcm文件夹;点button2,在右边显示dcm图像堆栈。
3、button1的实现:
(直接上代码)
TCHAR szPath[_MAX_PATH];
BROWSEINFO bi;
bi.hwndOwner=m_hWnd;
bi.pidlRoot=NULL;
bi.lpszTitle=_T("选择DICOM文件夹:");
bi.pszDisplayName=szPath;
bi.ulFlags=BIF_RETURNONLYFSDIRS;
bi.lpfn=NULL;
bi.lParam=NULL;
LPITEMIDLIST pItemIDList=SHBrowseForFolder(&bi);
if(pItemIDList)
{TCHAR szPath[_MAX_PATH];
if(SHGetPathFromIDList(pItemIDList,szPath))
{
m_path=szPath;
UpdateData(FALSE);
}
IMalloc* pMalloc;
if(SHGetMalloc(&pMalloc)!=NOERROR)
{TRACE(_T("无法取得外壳程序的接口\n"));}
pMalloc->Free(pItemIDList);
if(pMalloc)pMalloc->Release();
}
//AfxMessageBox(m_path);
if (m_path==""){MessageBox("请确认路径是否有效!");return;}
else
{
reader->SetDataByteOrderToLittleEndian();
reader->SetDirectoryName(m_path);
reader->SetDataSpacing (3.2,3.2, 2.5);
reader->Update();
MessageBox("文件打开成功!文件路径为:"+m_path+";确定后可进行下一步操作!");
}

