我想知道是否有一种方法可以让我更改QLineInput上的settigns,以便当用户开始输入时,文本显示在QLine输入的中心而不是左侧。
发布于 2018-07-31 06:01:33
对齐中心(
Qt::AlignCenter )-( AlignVCenter | AlignHCenter )两个维度的中心。
from PyQt5 import Qt
class Widget(Qt.QWidget):
def __init__(self):
super().__init__()
self.line_edit = Qt.QLineEdit()
self.line_edit.setAlignment(Qt.Qt.AlignCenter) # <-----
self.line_edit.textChanged.connect(self.on_text_changed)
layout = Qt.QVBoxLayout()
layout.addWidget(self.line_edit)
self.setLayout(layout)
def on_text_changed(self, text):
width = self.line_edit.fontMetrics().width(text)
self.line_edit.setMinimumWidth(width)
if __name__ == '__main__':
app = Qt.QApplication([])
mw = Widget()
mw.show()
app.exec()
https://stackoverflow.com/questions/51602562
复制相似问题