У меня возникли проблемы с присвоением значений QLineEdit. Я прочитал документацию и чувствую, что в какой-то момент будет использоваться команда QLineEdit.SetText().Назначить строку QLineEdit с помощью PySide/PyQt
Я использовал Qt Designer для разработки графического интерфейса для моего программного обеспечения. В главном окне (MainWindow.py, с сопровождающим файлом установки ui_MainWindow.py) у меня есть LineEdit (lineEditScanBarcode), который имеет сильный фокус. Мне удалось получить доступ к этому LineEdit довольно хорошо. Я хотел бы сделать следующее:
Если вход в LineEditScanBarcode = x, то назначьте имя «Джон Смит» второму QLineEdit (lineEditUser), который имеет политику нулевого фокуса. Это то, что я до сих пор:
def ScanBarcode(self):
barcode = self.lineEditScanBarcode.text()
self.lineEditScanBarcode.clear()
if barcode == '12345':
print("Welcome John")
self.lineEditUser.setText() = 'John'
else: print("Sorry, user not recognised.")
После запуска этого я получаю следующее сообщение об ошибке:
Syntax Error: can't assign to function call
Я имел взгляд на выше ошибки, но я все еще не уверены в к тому, что здесь происходит. Я до сих пор не имею идеи открывать одно окно поверх другого (этот пакет программного обеспечения будет содержать около 10 окон), но это еще одна история!
Является ли моя логика здесь на ходу? Раньше я никогда раньше не использовал Qt, поэтому мое понимание вовлеченных тонкостей, по меньшей мере, не хватает.
Любой вход будет отличным!
В вашем сообщении об ошибке говорится: «Невозможно назначить вызов функции». И вот что вы здесь делаете: 'self.lineEditUser.setText() = 'John''. Я думаю, 'self.lineEditUser.setText ('John')' - это то, что вы имели в виду. – zero323
@ zero323 Большое спасибо за разъяснение, которое имеет прекрасный смысл сейчас и, без сомнения, поможет в будущем понимании этого класса. Благодаря! – jars121
python не принимает 'self.lineEditUser.setText() = 'John'selfElineUser.setText() =' John'', потому что вы назначили значение для функции. – PersianGulf