PyQt从righ更改QWidget的方向

2024-10-02 12:37:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用SetLyouatDirection将widget的方向从右向左更改,但不起作用 我的结果是:

enter image description here

这是我的代码:

for item in listConcrdance:
        c+=1
        widgitItem = QtGui.QListWidgetItem()
        widget = QtGui.QWidget()
        widgetText=QtGui.QLabel(str(c)+". "+item[1]+" ("+self.process.convertNumberToNameOFSorat(item[0][1])+":"+item[0][2]+")")
        widgetText.setLayoutDirection(QtCore.Qt.RightToLeft)
        widgetLayout = QtGui.QHBoxLayout()
        widgetLayout.addWidget(widgetText)
        widgetLayout.setSizeConstraint(QtGui.QLayout.SetFixedSize)
        widget.setLayout(widgetLayout)
        self.listWidgetQuran.addItem(widgitItem)
        widgitItem.setSizeHint(widget.sizeHint())
        self.listWidgetQuran.setItemWidget(widgitItem, widget)

Tags: 代码inselfforwidget方向itemqtgui
1条回答
网友
1楼 · 发布于 2024-10-02 12:37:53

使用[your_label].setAlignment(QtCore.Qt.AlignRight)

from PyQt4 import QtCore
from PyQt4 import QtGui


class Widget(QtGui.QWidget):
    def __init__(self, parent=None):
        super(Widget, self).__init__(parent=parent)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.listWidget = QtGui.QListWidget(self)
        self.verticalLayout.addWidget(self.listWidget)
        for item in range(10):
            widgitItem = QtGui.QListWidgetItem(self.listWidget)
            widget = QtGui.QWidget()
            widgetText = QtGui.QLabel(str(item))
            if item % 2 == 0:
                widgetText.setAlignment(QtCore.Qt.AlignRight)
            else:
                widgetText.setAlignment(QtCore.Qt.AlignLeft)
            widgetLayout = QtGui.QHBoxLayout()
            widgetLayout.addWidget(widgetText)
            widget.setLayout(widgetLayout)
            widgitItem.setSizeHint(widget.sizeHint())
            self.listWidget.setItemWidget(widgitItem, widget)

if __name__ == '__main__':
    import sys
    app = QtGui.QApplication(sys.argv)
    w = Widget()
    w.show()
    sys.exit(app.exec_())

输出:

enter image description here

相关问题 更多 >

    热门问题