int CCText2View::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1;
HWND hWnd;
HBITMAP hBitmap;
// static CBitmap bitmap;
hBitmap=SHLoadDIBitmap((unsigned short *)"res\bitmap1.bmp");
// ((CBitmap*)hBitmap)->LoadBitmap(IDB_BITMAP1);
CreateCaret(hWnd,hBitmap,50,20);
ShowCaret();
return 0;
}
void CCText2View::OnLButtonDown(UINT nFlags, CPoint point)
{
SetCaretPos(point);
CView::OnLButtonDown(nFlags, point);
}
这是我的程序,编译通过了,但是运行结果显示不出图片,怎么回事啊,我用鼠标单击也没反应啊
我知道哪错了,要有当前窗口的句柄,用GetSafeHwnd(),得到
但是现在的问题是hBitmap=SHLoadDIBitmap((unsigned short *)"res\bitmap1.bmp")这句得到的hBitmap是空的,怎么的到位图的句柄呢?
CE下必须使用全路径,也就是说你的图片文件的路径不对!!
是啊,我也觉得不对,试了很多种路径名都不对。hBitmap=SHLoadDIBitmap 的hBitmap总是空的。
在电脑(真机)上我的图片在C:\\Program Files\\Microsoft eMbedded C++ 4.0\\Common\EVC\\MyProjects\\CText2\\res\\bitmap1.bmp 这个路径下,是不是
把这个路径放入SHLoadDIBitmap()里就可以?用"\\"还是"\"?
网上看到什么根路径,我的bmp文件的文件名是 res\bitmap1.bmp 这个和所谓的根路径有什么关系?
在设备或模拟器上,路径是以:\\开始的,不可能有盘符啊!
在我的编程的pc上我导入的那个bmp文件的路径是 C:\\Program Files\\Microsoft eMbedded C++ 4.0\\Common\EVC\\MyProjects\\CText2\\res\\bitmap1.bmp 程序运行结果在evc自带的那个wince虚拟机上看
我把C去掉后,以:\\开始的话还是得不到图片啊。。。。
如放到Windows目录下
就是\\Windows
joyzml 你的意思是 bmp文件放在windowsxp系统上,SHLoadDIBitmap()函数里的路径就要用\\ ?
你们说的 路径是 wince模拟器上的路径还是bmp在自己电脑(真机)存放位置的路径
file:///C:/Documents%20and%20Settings/Administrator/桌面/QQ截图未命名.png
这是bmp文件在我的工程里的位置,bmp文件是在这地方吗?
BMP只能放在设备或模拟器上,不能指定PC上的目录
比如 我的工程名字是 CText2 bmp文件是bitmap1.bmp 运行时要把工程下载到模拟器上,是不是这时
的路径应该 是 :\\CText2\bitmap1.bmp ?
补充一下 在导入 bmp 文件后 右击可以看到 filename的编辑框里写着 res\bitmap1.bmp 是不是
:\\CText2\res\bitmap1.bmp 这样?但这样也不行啊
图片一定要在设备或模拟器上,和PC上在什么目录无关的
为什么bitmap1.bmp文件在虚拟机里找不到?是不是在exe文件里?
91program 能不能举个例子 就比如 bitmap1.bmp吧,在evc中它在Bitmap文件里,但程序运行了他在模拟器的哪里啊,如果在Windows文件夹里,这个路径是 怎么样的形式?
我没有evc的书,网上说的有很多种类,你给个标准答案吧。