我正在使用C#在Windows 3.5 for Windows Mobile 6 Pro中开发一个应用程序,我有一个小问题需要一个知道更好的人的建议。
基本上,我希望我的应用程序能够在多种设备大小和分辨率上运行和扩展。 Eveything正确缩放但图像。 例如16X16的一些图像在高分辨率屏幕上看起来非常小,所以我想显示32X32图像,但我不知道决定显示哪个图像尺寸的最佳方法是什么。
我可以选择检查dpi然后手动选择要显示的图像,但这看起来很脏。
没有办法做到这一点,或者最好的方法是什么?
答案 0 :(得分:0)
我建议您在表单和图像之间创建一个图层。创建一个新类,负责返回正确大小的图像。表单中的代码将依赖于它来获取图像,并且不得不知道大小。例如:
mypicturebox.Image = ImageFactory.Image01;
好处是你可以在ImageFactory中使用任何你想要的技术,而不会影响其余的代码。最简单的方法是检查屏幕大小(使用Screen.PrimaryScreen.WorkingArea)并做出手动决定。