好像用什么GDI+可以实现,可是我找不到这个文件,自己编程序应该也可以实现的,但不知道怎么弄
解决方案 »
- 方差怎么算?
- WinDbg + VMWare 调试提示错误:Symbol information for the current line cound not be located...
- 如此更改背景为何不能实现?VC
- 『在用XMLDocument进行XML输出时,如何将各个结点自动换行和缩进?多谢,请各位帮帮忙!!』
- 请问几个简单的问题,帮我呀
- sgip问题!
- 一个很一般的问题-可是我不会
- 谁有windows下的使用原始socket编程的开源项目
- 如何获取QQ聊天窗口(DirectUI)的光标处文字
- Where to find a document to introduce the idc for IDA4.
- 关于海康威视的网络摄像机
- hook winvnc的截屏
看这个,有实例代码
{
CFileDialog m_dlg(TRUE,"JPG",NULL,NULL,"JPG(*.jpg)|*.JPG|gif|*.gif",this);
if (m_dlg.DoModal()==IDOK)
{
CString m_filename =m_dlg.GetPathName();
m_dir.SetWindowText(m_filename); CFile m_file(m_filename,CFile::modeRead );
//获取文件长度
DWORD m_filelen = m_file.GetLength();
//在堆上分配空间
HGLOBAL m_hglobal = GlobalAlloc(GMEM_MOVEABLE,m_filelen); LPVOID pvdata = NULL;
//锁定堆空间,获取指向堆空间的指针
pvdata = GlobalLock(m_hglobal); //将文件数据读区到堆中
m_file.ReadHuge(pvdata,m_filelen); IStream* m_stream; GlobalUnlock(m_hglobal); //在堆中创建流对象
CreateStreamOnHGlobal(m_hglobal,TRUE,&m_stream); //利用流加载图像
OleLoadPicture(m_stream,m_filelen,TRUE,IID_IPicture,(LPVOID*)&m_picture);
m_picture->get_Width(&m_width);
m_picture->get_Height(&m_height); CDC* dc = GetDC();
m_IsShow = TRUE;
CRect rect;
GetClientRect(rect);
SetScrollRange(SB_VERT,0,(int)(m_height/26.45)-rect.Height());
SetScrollRange(SB_HORZ,0,(int)(m_width/26.45)-rect.Width()); m_picture->Render(*dc,1,50,(int)(m_width/26.45),(int)(m_height/26.45),0,m_height,m_width,-m_height,NULL);
}
}