⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 加载pcx格式文件.c

📁 实现了打开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 + -