//mapx打开tab保存tab文件:
static char BASED_CODE szTabFilter[] = "MapInfo Map Files (*.tab)|*.tab|All Files (*.*)|*.*||"; // display a file open dialog to get 1 or more filenames
// then open the mapinfo .tab files one at a time
void CGleditView::OnFileOpen()
{
CFileDialog dlgFile(TRUE, "*.tab", NULL, 0, szTabFilter, this);
dlgFile.m_ofn.lpstrTitle = "Open MapInfo Tables"; // We want a multiple select file open, but on NT 3.51 the GetNextPathName() call
// returns bogus filenames (Can´t handle spaces I think.)
// So if NT 3.51 or less, then don´t set the multi-select flag
OSVERSIONINFO vers;
vers.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if (GetVersionEx(&vers)) {
if (vers.dwMajorVersion < 4 && vers.dwPlatformId == VER_PLATFORM_WIN32_NT) {
// no multiple select
}
else {
dlgFile.m_ofn.Flags |= OFN_ALLOWMULTISELECT;
}
} if (dlgFile.DoModal() == IDCANCEL)
return; try {
POSITION pos = dlgFile.GetStartPosition();
CString strFile;
while (pos) {
strFile = dlgFile.GetNextPathName(pos);
m_ctrlMapX.GetLayers().Add(strFile);
}
}
catch (COleDispatchException *e) {
e->ReportError();
e->Delete();
}
catch (COleException *e) {
e->ReportError();
e->Delete();
} }
void CGleditView::OnFileSave()
{
CFileDialog dlgFile(false, "*.tab", NULL, 0, szTabFilter, this);
dlgFile.m_ofn.lpstrTitle = "保存图层文件"; // We want a multiple select file open, but on NT 3.51 the GetNextPathName() call
// returns bogus filenames (Can´t handle spaces I think.)
// So if NT 3.51 or less, then don´t set the multi-select flag
OSVERSIONINFO vers;
vers.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if (GetVersionEx(&vers)) {
if (vers.dwMajorVersion < 4 && vers.dwPlatformId == VER_PLATFORM_WIN32_NT) {
// no multiple select
}
else {
dlgFile.m_ofn.Flags |= OFN_ALLOWMULTISELECT;
}
} if (dlgFile.DoModal() == IDCANCEL)
return; try {
CString strFile, FileName;
strFile = dlgFile.GetPathName();
FileName = dlgFile.GetFileName();
//m_ctrlMapX.SetGeoSet(FileName); }
catch (COleDispatchException *e) {
e->ReportError();
e->Delete();
}
catch (COleException *e) {
e->ReportError();
e->Delete();
} }
static char BASED_CODE szTabFilter[] = "MapInfo Map Files (*.tab)|*.tab|All Files (*.*)|*.*||"; // display a file open dialog to get 1 or more filenames
// then open the mapinfo .tab files one at a time
void CGleditView::OnFileOpen()
{
CFileDialog dlgFile(TRUE, "*.tab", NULL, 0, szTabFilter, this);
dlgFile.m_ofn.lpstrTitle = "Open MapInfo Tables"; // We want a multiple select file open, but on NT 3.51 the GetNextPathName() call
// returns bogus filenames (Can´t handle spaces I think.)
// So if NT 3.51 or less, then don´t set the multi-select flag
OSVERSIONINFO vers;
vers.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if (GetVersionEx(&vers)) {
if (vers.dwMajorVersion < 4 && vers.dwPlatformId == VER_PLATFORM_WIN32_NT) {
// no multiple select
}
else {
dlgFile.m_ofn.Flags |= OFN_ALLOWMULTISELECT;
}
} if (dlgFile.DoModal() == IDCANCEL)
return; try {
POSITION pos = dlgFile.GetStartPosition();
CString strFile;
while (pos) {
strFile = dlgFile.GetNextPathName(pos);
m_ctrlMapX.GetLayers().Add(strFile);
}
}
catch (COleDispatchException *e) {
e->ReportError();
e->Delete();
}
catch (COleException *e) {
e->ReportError();
e->Delete();
} }
void CGleditView::OnFileSave()
{
CFileDialog dlgFile(false, "*.tab", NULL, 0, szTabFilter, this);
dlgFile.m_ofn.lpstrTitle = "保存图层文件"; // We want a multiple select file open, but on NT 3.51 the GetNextPathName() call
// returns bogus filenames (Can´t handle spaces I think.)
// So if NT 3.51 or less, then don´t set the multi-select flag
OSVERSIONINFO vers;
vers.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if (GetVersionEx(&vers)) {
if (vers.dwMajorVersion < 4 && vers.dwPlatformId == VER_PLATFORM_WIN32_NT) {
// no multiple select
}
else {
dlgFile.m_ofn.Flags |= OFN_ALLOWMULTISELECT;
}
} if (dlgFile.DoModal() == IDCANCEL)
return; try {
CString strFile, FileName;
strFile = dlgFile.GetPathName();
FileName = dlgFile.GetFileName();
//m_ctrlMapX.SetGeoSet(FileName); }
catch (COleDispatchException *e) {
e->ReportError();
e->Delete();
}
catch (COleException *e) {
e->ReportError();
e->Delete();
} }
解决方案 »
- MSDN的使用问题
- 怎么获取保存在网页编辑框中的密码??
- 关于单选框创建关联变量的问题
- 请grasshopperliu(老前辈) 拿分
- 求canny算子的vc源程序:[email protected] 急!!!!!
- 请求技术支持(有谁知道解偏微分方程的完全多网格法的主程序的C++代码) ,对提供有用信息的大侠宁愿送所有的分
- 有关按钮的一个小问题请大家赐教
- 关于多CPU的问题:编写单CPU和多CPU系统的区别在那里?以及...
- 哪位兄台知道怎么把位图转成光标吗?俺急呀!!!!!!!!!!!
- 为什么后一次命令到的数据还是前一次命令收到的数据,
- 用VC将BMP格式的图片转化成JPEG格式的图片
- 怎样编译VXD和屏保?请高手指点!
但VB中没有与MFC框架对应的东西,
所以,
只是翻译过去,也不能用.
Private Sub Command1_Click()CommonDialog1.Filter = "*.tab"
CommonDialog1.ShowOpenIf CommonDialog1.CancelError = True Then
End Ifstr = CommonDialog1.FileName
MsgBox str
End SubPrivate Sub Command2_Click()CommonDialog1.Filter = "*.tab"
CommonDialog1.ShowSave
//这里str为文件路径,把它的内容读到新文件中就行啊
If CommonDialog1.CancelError = True Then
MsgBox "ok"
End IfEnd Sub
szTabFilter = MapInfo Map Files (*.tab)|*.tab|All Files (*.*)|*.*||"添加一个CommonDlgCtrl6.0, 名称dlg
private sub FileOpen()
{
Dlg.Filter = szTabFilter
Dlg.Flags = FileOpenConstants.cdlOFNFileMustExist
Dlg.ShowOpen