wince实现屏幕旋转的方法
来源:互联网 发布:历史数据库设计 编辑:程序博客网 时间:2024/06/10 01:26
wince实现屏幕旋转的方法
1.驱动层上实现:winCE 4.2以上
一.修改
SMDK2440/DRIVERS/DISPLAY/S3C2440LCD 目录下的sources文件合适位置增加:
CLEARTYPE=0
ROTATE=1 //这句是我加的
二.s3c2440disp.h文件头上加一句
#define ROTATE
三.s3c2440disp.cpp中
S3C2440DISP::S3C2440DISP (void)
{
#ifdef ROTATE
//m_iRotate = GetRotateModeFromReg(); 原来的是通过GetRotateModeFromReg读取
//[HKEY_LOCAL_MACHINE/System/GDI/Rotation] 下的"Angle"值决定m_iRotate
m_iRotate = DMDO_90;
SetRotateParms();
#endif //ROTATE
四.检查platform.reg中,
[HKEY_LOCAL_MACHINE/System/GDI/Drivers]
"Display"="s3c2440disp.dll"
以下注册表可以有可以没有。
[HKEY_LOCAL_MACHINE/System/GDI/Rotation]
"ANGLE"=dword:5A ;0x5A for 90,这是我加的 ,加在gdi/drivers这项后面
五,要在S3C2440DISP::S3C2440DISP (void) 最后加一句
((GPESurfRotate *)m_pPrimarySurface)->SetRotation(m_nScreenWidth, m_nScreenHeight, m_iRotate);
而s2440.h、2410中关于屏幕的东西不要去改,那是初试化lcd控制器的,与这里没有关系。
2.通过修改注册表做Rotation
默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修改”Angle”的值来完成,具体设置如下:
[HKEY_LOCAL_MACHINE/System/GDI/Rotation]
"Angle"=dword:5A ;翻转90度,罗嗦一句,5A就是90的十六进制
可以设置为0度,90度,180度和270度。也就是0,5A,B4和10E,通过设置这些值可以达到屏幕翻转的目的。你可以在Build image的时候就做这件事情,只要在project.reg文件里面加入上面的设置,然后重新make image,这样新的image启动以后就会按照你的设定来显示。也可以在WinCE启动以后,编个读写注册表的小程序,来修改这个值,然后重新启动就可以了(系统要支持HIVE-Based Registry)。
- WinCE 实现屏幕旋转的方法
- wince实现屏幕旋转的方法
- WinCE实现屏幕旋转方法
- WINCE实现屏幕旋转
- wince下的屏幕旋转
- 实现WinCE的转屏(屏幕旋转):转自互联网
- 在WinCE中实现屏幕旋转
- wince添加屏幕旋转的支持
- wince添加屏幕旋转的支持
- Wince屏幕旋转使用的代码段
- WinCE旋转屏幕函数
- wince mini2440 旋转屏幕
- Android实现屏幕旋转方法
- Android实现屏幕旋转方法
- Android实现屏幕旋转方法
- 在WinCE中实现屏幕旋转 Screen Rotation962914325
- 在WinCE中实现Screen Rotation(屏幕旋转)
- 在WinCE中实现Screen Rotation(屏幕旋转)
- .NET线程控制
- Android高手进阶教程(六)之 ----Android 中MenuInflater的使用(布局定义菜单)
- WINCE编译debug版本出错的问题
- vc2005编译出来的程序实现绿色版,即无须安装运行库
- Object C 获取日期(学习笔记一)
- wince实现屏幕旋转的方法
- VC2005 Debug 和 Release 编译方式的本质区别
- flash绘图API:雷达
- 手工查杀病毒入门基础知识简介
- 老师写的万年历
- 杀毒软件查杀原理
- c# 中关于对文件的简单操作(二)
- Android 获取存储卡路径和空间使用情况
- Activity设置全屏以及Android获得屏幕的宽和高