pyqt: удалить макет из qlineEdit - PullRequest
0 голосов
/ 06 марта 2020

У меня есть QlineEditText, который мне дал Qlayout, я хочу обновить его, но он говорит:

QLayout: Попытка добавить QLayout "" в QLineEdit "lineEdit_2", который уже имеет макет

MTL.Convert(self.lineEdit_2,'$' + str(self.lineEdit.text()) + '$')

class MathTextLabel(QtWidgets.QWidget):
    #def __init__(self, mathText, parent=None, **kwargs):
    def Convert(txt, mathText):
        super(QtWidgets.QWidget, txt)

        l=QVBoxLayout(txt)

        l.setContentsMargins(0,0,0,0)

        r,g,b,a=txt.palette().base().color().getRgbF()

        txt._figure=Figure()

        txt._canvas=FigureCanvas(txt._figure)

        l.addWidget(txt._canvas)

        txt._figure.clear()

        text=txt._figure.suptitle(
            mathText,
            x=0.0,
            y=1.0,
            horizontalalignment='left',
            verticalalignment='top',
            size=QtGui.QFont().pointSize()*2
        )

это работает 1-й раз, конвертируя мой латекс в уравнение в макете вместо моего 2-го QlineEditText, но когда я снова нажимаю кнопку после изменения латексного уравнения в 1-м текстовом поле, он говорит:

QLayout: Попытка добавить QLayout "" в QLineEdit "lineEdit_2", который уже имеет макет

...