📄 加载pcx格式文件.c
字号:
void CCh1_1View::OnCodeIRLE()
{
// 加载256色PCX文件
// 文件路径
CString strFilePath;
// 创建Open对话框
CFileDialog dlg(TRUE, "PCX", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
"PCX图像文件 (*.PCX) | *.PCX|所有文件 (*.*) | *.*||", NULL);
// 提示用户选择保存的路径
if (dlg.DoModal() != IDOK)
{
// 返回
return;
}
// 获取用户指定的文件路径
strFilePath = dlg.GetPathName();
// CFile和CFileException对象
CFile file;
CFileException fe;
// 尝试打开指定的PCX文件
if (!file.Open(strFilePath, CFile::modeRead | CFile::shareDenyWrite, &fe))
{
// 提示用户
MessageBox("打开指定PCX文件时失败!", "系统提示" ,
MB_ICONINFORMATION | MB_OK);
// 返回
return;
}
// 调用ReadPCX256()函数读取指定的256色PCX文件
HDIB hDIB = ::ReadPCX256(file);
if (hDIB != NULL)
{
// 提示用户
//MessageBox("成功读取PCX文件!", "系统提示" ,
// MB_ICONINFORMATION | MB_OK);
// 获取文档
CCh1_1Doc* pDoc = GetDocument();
// 替换DIB,同时释放旧DIB对象
pDoc->ReplaceHDIB(hDIB);
// 更新DIB大小和调色板
pDoc->InitDIBData();
// 设置脏标记
pDoc->SetModifiedFlag(TRUE);
// 重新设置滚动视图大小
SetScrollSizes(MM_TEXT, pDoc->GetDocSize());
// 实现新的调色板
OnDoRealize((WPARAM)m_hWnd,0);
// 更新视图
pDoc->UpdateAllViews(NULL);
}
else
{
// 提示用户
MessageBox("读取PCX文件失败!", "系统提示" ,
MB_ICONINFORMATION | MB_OK);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -