Qt:字符串在 rtl 布局中显示不正确

Qt : Strings display incorrectly in rtl layout

我正在编写一个应该使用从右到左布局的 qt 应用程序,但是在 qtreewidget 中显示包含 space、数字和字母的字符串时出现问题和 qtablewidget。例如,当我写 65 %c 它显示为 c% 65 当然日期时间显示为 "22:10:06 2015-01-06" 而不是 "2015-01-06 22:10:06"

我该如何解决这个问题?

截图:

谢谢

当您使用 rtl 布局时,所有 children 假设您的书写语言也是 rtl。 数字是通用的,因此根据此设置对它们进行处理。 当您使用 ltr 字符(例如拉丁语)时,这会产生 "funny" 副作用(当您编辑此文本时更有趣,当箭头移动时光标会跳到不同的位置)。

修复它的一种方法是在需要的地方添加 Unicode Left-to-right mark 个字符。

IMO 如果您的语言是 ltr,最好不要使用此功能(rtl 布局)。让语言环境设置发挥这个魔力。

你能解释一下你是如何以及为什么使用 "rtl layout" 的吗?您决定更改文字方向的目的是什么?