我在RTL中使用Qt 4.7.4和我的应用程序语言。 我已将应用程序布局设置为RightToLeft。 所以除了QLineEdit中的占位符外,现在一切都是从右到左。
我尝试了setAlignment方法 但它反过来改变了文本和占位符的方向。 然后我尝试了setStylesheet但它不适用于
direction:rtl;
text-align:right;
unicode-bidi:embed;
我认为这是一个错误,有没有修复?
答案 0 :(得分:2)
版本4.7的更改日志如下所示:
QWidget :: setLayoutDirection不再影响文本布局 QTextEdit的方向(Qt :: LeftToRight或Qt :: RightToLeft),QLineEdit 和基于它们的小部件。
默认文本布局方向 现在可以从键盘布局中检测到(Qt :: LayoutDirectionAuto) 文本语言(符合Unicode标准)。
至 以编程方式强制QTextEdit的文本方向,你可以 更改与之关联的QTextDocument的defaultTextOption 具有不同textDirection属性的新QTextOption的小部件。
对于QLineEdit,到目前为止唯一的方法是发送Qt :: Key_Direction_L / R. 该小部件的键盘事件。
希望有所帮助。