WinCE旋转屏幕函数

【大唐杯学习超快速入门】5G技术原理仿真教学——5G网络开通调测与车联网 自用笔记,比较乱。 阅读详情

以下函数,每执行一次旋转90度

 
void RotationScreenFun(void)
{
 DEVMODE DevMode;
 int RotationAngles;
 int CurrentAngle;
 int NewAngle;
 //
 // Check for rotation support by getting the rotation angles supported.
 //(原创内容,转载请注册出处,原帖地址:[url=http://www.veabol.com/thread-67-1-1.html]http://www.veabol.com/thread-67-1-1.html[/url])
 memset (&DevMode, 0, sizeof (DevMode));
 DevMode.dmSize   = sizeof (DevMode);
 DevMode.dmFields = DM_DISPLAYQUERYORIENTATION;
 if (DISP_CHANGE_SUCCESSFUL == ChangeDisplaySettingsEx(NULL, &DevMode, NULL, CDS_TEST, NULL))
 {
  RotationAngles = DevMode.dmDisplayOrientation;
  RETAILMSG(1, (L"ChangeDisplaySettingsEx supports these rotation angles %d", RotationAngles));
 }
 else
 {
  RETAILMSG(1, (L"ChangeDisplaySettingsEx failed to get the supported rotation angles."));
  RotationAngles = -1;
 }
 //
 // Get the current rotation angle.
 //
 memset(&DevMode, 0, sizeof (DevMode));
 DevMode.dmSize   = sizeof (DevMode);
 DevMode.dmFields = DM_DISPLAYORIENTATION;
 if (DISP_CHANGE_SUCCESSFUL == ChangeDisplaySettingsEx(NULL, &DevMode, NULL, CDS_TEST, NULL))
 {
  CurrentAngle = DevMode.dmDisplayOrientation;
  RETAILMSG(1, (L"ChangeDisplaySettingsEx reports the current rotation as %d", CurrentAngle));
 }
 else
 { 
  RETAILMSG(1, (L"ChangeDisplaySettingsEx failed to get the current rotation angle."));
  CurrentAngle = -1;
 }
 //
 // Rotate to the "next" angle.
 //
 if (CurrentAngle >= 0 && RotationAngles >= 0)
 {
  NewAngle = CurrentAngle;
  do
  {
   NewAngle <<= 1;
   if (NewAngle == DMDO_0)
   {
    NewAngle = DMDO_90;
   }
   if (NewAngle > DMDO_270)
   {
    NewAngle = DMDO_0;
   }
  } while (!(NewAngle & RotationAngles) && (NewAngle != DMDO_0));
  memset(&DevMode, 0, sizeof (DevMode));
  DevMode.dmSize               = sizeof (DevMode);
  DevMode.dmFields             = DM_DISPLAYORIENTATION;
  DevMode.dmDisplayOrientation = NewAngle;
  if (DISP_CHANGE_SUCCESSFUL == ChangeDisplaySettingsEx(NULL, &DevMode, NULL, CDS_RESET, NULL))
  {
   RETAILMSG(1, (L"ChangeDisplaySettingsEx changed rotation angle to %d", NewAngle));
  }
  else
  {
   RETAILMSG(1, (L"ChangeDisplaySettingsEx failed to change the rotation angle to %d", NewAngle));
  }
 }
}
---------------------------
本站内容如未注明“转载”分类则为站内用户原创,未经作者允许商业网站不得转载,普通网站及用户转载时需保留文章原版内容且注明出处!
文章来源:  普嵌嵌入式  | 原文地址:  http://www.pro-embedded.com/thread-67-1-1.html

告别信号干扰!用Altium Designer 19搞定4层/6层PCB叠层设计的保姆级流程 本文详细介绍了如何使用Altium Designer 19进行4层/6层PCB叠层设计,解决信号干扰问题。通过实际案例和系统方法论,涵盖高速数字电路、混合信号系统等典型场景的设计优化,帮助硬件工程师和学生掌握电磁兼容(EMC)与信号完整性(SI)的核心技术。 阅读详情

相关推荐

Dify+MCP 双剑合璧:告别知识库模糊统计,让AI精准查询数据库数据!

本文详细介绍了如何通过Dify和MCP的结合,解决知识库在数据库查询中的模糊统计问题。通过MCP中间件将自然语言实时转换为SQL语句,实现精准数据查询,并支持SSE协议持续更新数据。文章包含MySQL环境搭建、MCP服务端部署、Dify工作流配置等实战步骤,帮助用户高效构建智能数据库查询系统。

weixin_33737774的博客 368

Android中的转屏流程

我们知道Android中支持横屏和竖屏,用户可以选择锁定(rotation lock)也可以选择让传感器来自动转屏。而转屏时为了使用户体验更流畅,会对屏幕截屏,然后使用截屏的图来做转屏动画,直到转屏动作结束。接下来以自动旋转为例看一下大体流程。过程虽然很短,但涉及到的模块其实不少,一个简化的相关类图如下:

世事难料,保持低调 1万+

k8s中如何使用gpu、gpu资源讲解、nvidia gpu驱动安装

gpu资源也是服务器中常见的一种资源,gpu即显卡,一般用在人工智能、图文识别、大模型等领域,其中nvidia gpu是nvidia公司生产的nvidia类型的显卡,amd gpu则是adm公司生产的amd类型gpu。企业中服务器最常见的就是英伟达gpu服务器了。本篇也主要讲解英伟达驱动相关的知识。

MssGuo的博客 1万+

改变屏幕方向的函数用法

orientation_event_get_angle() 得到方向的角度,返回0,90,180,270种的一个 0是风景模式,blackbery logo 在下面 90和270是肖像模式 180是和0相反的 orientation_event_get_direction() 得到设备的方向 orientation_get() 得到设备的方向和角度 orientation_get_do

bberchina的专栏 489

Abaqus 导出单元刚度矩阵和全局刚度矩阵

Abaqus 导出单元刚度矩阵和全局刚度矩阵

科技芯风 1万+

保姆级教程:用Unidbg搞定阿里系App的x-sign和长x-mini-wua签名(附完整Java代码)

本文详细介绍了如何使用Unidbg框架模拟执行阿里系App的原生库,生成关键的x-sign和x-mini-wua签名参数。通过完整的Java代码示例和实战技巧,帮助开发者高效实现签名算法,适用于安全研究、数据分析和第三方应用开发场景。

weixin_29243279的博客 484

屏幕旋转

一、屏幕旋转的支持 处理屏幕旋转支持的代码在ViewController.m文件里,函数如下。 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { // Return YES for supported orientations

652

Diffusion:如何从噪声中生成清晰图像

扩散模型是当前AI图像生成领域的核心基础,如Stable Diffusion、DALL·E等热门模型均采用该技术。其原理分为训练和推理两个阶段:训练时通过逐步加噪图片,让AI学习如何去除噪声;推理时则从随机噪声出发,结合文本提示逐步去噪生成清晰图像。模型架构通常包含文本编码器、生成模型(如U-Net)和解码器三部分,通过多轮迭代将低维潜在空间表示转化为最终图像。这种技术模拟了艺术家从混沌中雕琢作品的过程,实现了从随机噪声到目标图像的智能生成。

laumy的学习笔记 1273

转 WinCE6.0下如何动态设置系统分辨率

由于WinCE的显示驱动是本地驱动,不能像流驱动一样动态加载。所以,一般情况下不能动态修改和调试。前两天曾介绍过一种在应用程序中针对相同分辨率但不同尺寸的LCD的调试方法。这里继续介绍WinCE6.0下动态设置系统分辨率的一种方法。我们可以通过系统提供的ChangeDisplaySettingsEx()函数实现动态修改系统的分辨率。 设定系统分辨率的参考代码如下: 复制代码 1 DW...

Mikeyunshan的博客 503

《大数据之路:阿里巴巴大数据实践》-第1篇 数据技术篇 -第3章数据同步

我们将数据釆集分为日志采集和数据库数据同步两 部分。数据同步技术更通用的含义是不同系统间的数据流转,有多种不 同的应用场景。主数据库与备份数据库之间的数据备份,以及主系统与 子系统之间的数据更新,属于同类型不同集群数据库之间的数据同步。 另外,还有不同地域、不同数据库类型之间的数据传输交换,比如分布 式业务系统与数据仓库系统之间的数据同步。对于大数据系统来说,包 含数据从业务系统同步进入数据仓库和数据从数据仓库同步进入数据 服务或数据应用两个方面。本章侧重讲解数据从业务系统同步进入数据 仓库这个环节,但其适

m0_54252387的博客 960

多模态大模型:技术原理与实战 全球多模态大模型介绍

关键词:多模态大模型、深度学习、计算机视觉、自然语言处理、跨模态学习、迁移学习、人工智能随着人工智能技术的飞速发展,多模态大模型已经成为了当前AI领域最热门的研究方向之一。多模态大模型能够同时处理和理解多种类型的数据,如文本、图像、音频和视频等,这为AI系统在复杂场景下的应用提供了更加强大和灵活的能力。本文将深入探讨多模态大模型的技术原理,介绍其实战应用,并对全球主要的多模态大模型进行全面的介绍和比较。

AI天才研究院 4265

WinCE6.0实现屏幕旋转(Screen Rotation)

在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation: (注:第一种方法在我的Mini2440开发板上重启生效;第二种方法经修改程序后,

home1410的专栏 1648

22、云数据中心网络(DCN)部署最佳实践

本文详细介绍了云数据中心网络(DCN)部署的最佳实践,涵盖SDN设计、服务网络规划、管理网络规划等方面。通过合理的架构设计、路由规划和组件协同,提升数据中心的自动化水平、可靠性及安全性,以满足不断增长的业务需求。

d6e7f8的博客 186

wince6.0 屏幕旋转

转载至http://blog.youkuaiyun.com/shen8686/article/details/5989977 最近做了一个wince下屏幕旋转的测试. 我实现的效果是一个基于wince的应用程序, 显示区域有个button,  每按一次这个button,屏幕会旋转90度. 这个东东我调了整整三天, 中间遇到很多问题, 最后总算成功了,最关键的是,我对wince的显示驱动有了更深的认识.

旷野清泉-技术交流 922

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

在WinCE中实现Screen Rotation(屏幕旋转)

<br />转自:http://www.cnblogs.com/mugua/archive/2009/03/16/1412871.html<br /> <br />在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation: <br />1.通过修改注册表做Rotation<br />默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修

DM_man的专栏 754

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

在WinCE中实现屏幕旋转

在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation: 1. 通过修改注册表做Rotation  默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修改”Angle”的值来完成,具体设置如下:  [HKE

hugohong的专栏 1078

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

WinCE 实现屏幕旋转的方法

<br />在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation:1.       通过修改注册表做Rotation默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修改”Angle”的值来完成,具体设置如下:[HKEY_LOCAL_MACHINE/System/GDI/Rotation]    "Angle"=dword:5A 

Jicky1984的专栏 1152

在WinCE中实现屏幕旋转 Screen Rotation962914325

在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation:   1.    通过修改注册表...

cuj2489的博客 570

实现WinCE的转屏(屏幕旋转):转自互联网

<br />实现WinCE的转屏(屏幕旋转)<br /><br />    在WinCE中实现屏幕的旋转(当然角度只能是90度的整数陪),首先确认显示设备的驱动是否支持旋转功能。在显示设备支持的前提下,可以通过以下两种方法实现屏幕的旋转:<br />一、通过修改注册表实现<br />    默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修改”Angle”的值来完成,具体设置如下:<br />    [HKEY_LOCAL_MACHINESystemGDIRota

bbw2008的专栏 1291

linux桌面旋转了180度,在WinCE中实现屏幕旋转 Screen Rotation962914325

在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation:1.    通过修改注册表做Rotation默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修改”Angle”的值来完成,具体设置如下:[HKEY_LOCAL_MA...

weixin_39876002的博客 477

在WinCE中实现Screen Rotation

作者:ARM-WinCE         在WinCE中做Screen Rotation,首先确认显示设备的驱动是否支持Screen Rotation功能。在显示设备支持的前提下,可以通过以下两种方法做Screen Rotation:  1.       通过修改注册表做Rotation默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,

唐勉的ARM/Linux/WinCE专栏 4527
上一篇: WinCE 关闭屏幕、打开屏幕函数
ProEmbedded
博客等级 码龄16年 4粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值