我默认QT编程语言是english既然english是left to right 我有一个菜单,并在左侧的一些按钮,但是当我改变我的计划对那些具有语言right to left方向,放置菜单,并在左侧的按钮是没有意义的.
所以我想知道是否可以选择将所有小部件撤销到正确的位置?
小智 6
使用QML,已经有大量关于如何执行此操作的文档,最明显的layoutDirection: Qt.RightToLeft是与标准订单相比将所有窗口小部件的子项按相反顺序放置的属性
http://doc.qt.io/qt-5/qtquick-positioning-righttoleft.html
您还可以选择使用qApp->setLayoutDirection (Qt::RightToLeft);main.cpp开头的代码行进行全局设置
https://witekio.com/blog/qt-internationalization-arabic-chinese-right-left/
链接页面的示例:
Page {
LayoutMirroring.enabled: (Qt.application.layoutDirection === Qt.RightToLeft)
LayoutMirroring.childrenInherit: true
Row {
// Row will use right-to-left order when LayoutMirror.enabled = true
Text {
id: songNumber
text: "1."
horizontalAlignment: Text.AlignLeft // Alignment will adjust too. But don't fail to mention it
// or the text won't change its alignment
Text {
id: artistItem
text: "Some Artist"
horizontalAlignment: Text.AlignLeft
// Manually change elide side
elide: (Qt.application.layoutDirection === Qt.LeftToRight) ?
Text.ElideRight : Text.ElideLeft
}
}
}
Run Code Online (Sandbox Code Playgroud)