与PC平台的开发相比,Mobile的开发麻烦了许多,至少这是我的感觉 。
谢谢--“ Fly Pig(^@^)” 的文章《Mobile开发(绘制背景图片) 》
http://www.cnblogs.com/Bright-Liang/archive/2009/06/11/1501309.html
不过对于我这种低手来说,就利用上面的代码还是让我改了两天才搞定。
1、文章中有几个类需要自己添加引用
A、PixelFormat 需要引用 System.Drawing.Imaging;
B、GetConfig,ConfigClass,ScreenFileName 可能是自定义的类吧,应该是用来读取配置文件中关于窗口属性的
2、不知道有人碰到过与我相同的问题没有,使用模拟器调试时,放在项目中的图片不能直接调用,因为它不会与.exe文件一起被复制到模拟器上,导致使用AlphaImage.CreateFromFile(path + @"\wm_bg.png"); 时,总是无法找到图片文件。我的解决办法是将图片放到资源文件中,如果在指定路径找不到,就从资源文件中读取。
首先,将图片放入项目,将其属性->生成操作->嵌入的资源
然后,将读取图片部分的代码改为:
if (System.IO.File.Exists(path + @"\wm_bg.png"))
{
//图片存在,直接连接图片路径
bmp = AlphaImage.CreateFromFile(path + @"\wm_bg.png");
}
else
{
//图片不存在,从资源文件中读取
bmp = AlphaImage.CreateFromResource("项目名称.Images.wm_bg.png");
}
Rectangle imgRect = new Rectangle(0, 0, formSize.Width, formSize.Height);
bmp.Draw(gxBuffer, imgRect);
e.Graphics.DrawImage(offBitmap, 0, 0);
注意从资源文件中读取时,注意图片的正确路径,如果是放置在项目根目录下,则“项目名称.图片名称”,如果放置在某个文件夹下,则“项目名称.图片文件夹名.图片名称”