微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何检测Windows安装是否为RTL

(我使用的是Windows XP,但问题与所有/任何Windows版本有关)

Windows安装程序进来2“flavoers”:LTR或RTL。 意思是,从左到右或从左到右显示GUI(button,窗口控件,菜单等等)。

这主要与希伯来语和阿拉伯语版本的窗口有关。

我的程序需要找出显示其小部件的认行为。

使用Python将阿拉伯文或任何从右到左的书写系统string打印到Linuxterminal

LOCALE不是正确的答案!

本地属于date格式,千位分隔符,UI语言和其他语言/文化特定设置,但在Windows中,语言环境不会影响UI方向。

我怎样才能找出(registry,环境等)操作系统的方向?

BOOL GetProcessDefaultLayout(DWORD *pdwDefaultLayout)或DWORD GetLayout(HDC hdc)

使用系统任务栏上的getwindowlong检查WS_EX_LAYOUTRTL以查找开始菜单的位置,这将为您提供OS文本方向:

if (getwindowlong(FindWindow(_T("HHTaskBar"),NULL),GWL_EXSTYLE) != 0) //it's RTL

如果使用带有SM_MIDEASTENABLED的nIndex的GetSystemMetrics,如果系统启用了希伯来语和阿拉伯语,它将返回非零值,如果不是0,则返回0。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐