读书人

问两个MFC在Win8平板上运行的有关问题

发布时间: 2014-01-08 00:30:58 作者: rapoo

问两个MFC在Win8平板上运行的问题
1.如何判断当前的运行环境是PC还是平板?
2.如何调用平板操作系统的输入键盘?注意是输入法键盘,不是屏幕键盘osk.exe
关于输入键盘,如果我的程序不是全屏运行的话倒是可以点一下任务栏上的问两个MFC在Win8平板上运行的有关问题直接弹出并使用,问题是我的程序可以设置成全屏显示,所以全屏的时候无法用上述方法实现。平板的输入键盘如图:
问两个MFC在Win8平板上运行的有关问题
[解决办法]
你的程序有输入框的时候,用户点击,会自动触发输入法的吧

[解决办法]
表示不懂,MFC在平板上能用触摸屏吗?求知晓,呵呵。
[解决办法]
一般单击输入都会触发的,你可以分别试试抓下消息看看!
系统的话,你可以GetVersionEx 试试看返回值
[解决办法]
那你要是判断这个,就难了吧,看微软给你开放定义了没有??
[解决办法]
SYSTEM_INFO siSysInfo;

GetSystemInfo(&siSysInfo);

dwProcessorType
An obsolete member that is retained for compatibility. Use the wProcessorArchitecture, wProcessorLevel, and wProcessorRevision members to determine the type of processor.
PROCESSOR_INTEL_386 (386)PROCESSOR_INTEL_486 (486)PROCESSOR_INTEL_PENTIUM (586)PROCESSOR_INTEL_IA64 (2200)PROCESSOR_AMD_X8664 (8664)PROCESSOR_ARM (Reserved)
[解决办法]

wProcessorArchitecture
The processor architecture of the installed operating system. This member can be one of the following values.


Value

Meaning

PROCESSOR_ARCHITECTURE_AMD649
x64 (AMD or Intel)

PROCESSOR_ARCHITECTURE_ARMReserved
ARM

PROCESSOR_ARCHITECTURE_IA646
Intel Itanium-based

PROCESSOR_ARCHITECTURE_INTEL0
x86

PROCESSOR_ARCHITECTURE_UNKNOWN0xffff
Unknown architecture.


[解决办法]
判断CPU是否为ARM是一个思路
[解决办法]
引用:
判断CPU是否为ARM是一个思路


ARM版本下能开发MFC程序?我没看错吧,有Win32 ARM版本的?
[解决办法]
Use the Windows GetSystemMetricsAPI and pass in SM_TABLETPC as the value of the index. SM_TABLETPC is defined in Winuser.h. The value of SM_TABLETPC is 86.
[解决办法]
引用:
Quote: 引用:

晕 我也在移植MFC程序到win8平板上 我想知道楼上移植的时候主要注意事项,我这里还没启动呢 ,只是让它简单的跑起来 ,除了界面部分 ,我觉得主要难点就是触控部分 这方面不知如何下手

没什么特别的注意事项。
触控就如同鼠标一样的,差不多,请看6楼
唯一不同的是平板没有外接键盘,所以我才发了这个帖子

手头没有win板,没法给你测试,以上我是查自msdn

[解决办法]
引用:
Quote: 引用:

Use the Windows GetSystemMetricsAPI and pass in SM_TABLETPC as the value of the index. SM_TABLETPC is defined in Winuser.h. The value of SM_TABLETPC is 86.



int iIndex = GetSystemMetrics(SM_TABLETPC);

这样写?PC上的返回值是0啊,不知道平板上是多少,下次试试。。
这个函数只用过来取屏幕分辨率,敢问大侠上面那样写是什么目的?

GetSystemMetrics可不仅是用来取屏幕分辩率!

读书人网 >VC/MFC

热点推荐