如何将QLabel文本对齐到标签的右边缘

24 投票
1 回答
60518 浏览
提问于 2025-04-18 14:49

这个标签的宽度是通过 label.setFixedWidth(200) 设置为固定的200像素。标签里面的文字比标签的宽度要短。目前,标签里的文字是居中显示的。但我希望文字的右边缘和旁边的输入框的左边缘对齐,也就是说文字的右边要紧贴着输入框的左边。

enter image description here

from PyQt4 import QtCore, QtGui

class MainWindow(QtGui.QMainWindow):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)

        self.resize(720, 480)
        cWidget = QtGui.QWidget(self)
        self.setCentralWidget(cWidget)

        layout = QtGui.QHBoxLayout(cWidget)

        label = QtGui.QLabel("     Label Text Value: ")
        label.setFixedWidth(200)
        layout.addWidget(label)

        textEdit = QtGui.QTextEdit()
        textEdit.setMaximumHeight(14)
        layout.addWidget(textEdit)

        button=QtGui.QPushButton("Browse")
        layout.addWidget(button)


if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    frame = MainWindow()
    frame.show()
    sys.exit(app.exec_())

1 个回答

55

如果你不想使用间隔符,这个方法可以解决问题:

label.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)

撰写回答