Не могу сделать вывод, что я делаю не так? Pyqt5 Python
https://disk.yandex.ru/d/uUxwFaBm7Jr7mg вот ссылка на сам ui приложения
Ответы (1 шт):
Автор решения: Beneviento
→ Ссылка
import sys
from PyQt5 import uic
from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit
сlass MyWidget(QDialog):
def __init__(self):
super().__init__()
uic.loadUi('CreditCalc.ui', self) # Исправлена ошибка в имени файла
'uifile'
self.pushButton.clicked.connect(self.k) # Предполагается, что ваша
кнопка называется 'pushButton'
def a(self):
return int(self.input1.text())
def b(self):
return int(self.input2.text())
def c(self):
return int(self.input3.text())
def k(self):
a = self.a()
b = self.b()
c = self.c()
result = a + b + c # Выполните ваш расчет здесь
self.output.setPlainText(str(result)) # Предполагается, что ваш виджет
вывода называется 'output'
app = QApplication(sys.argv)
ex = MyWidget()
ex.show()
sys.exit(app.exec_())
Исправил строку uic.loadUi, чтобы удалить ненужный uifile: и исправить опечатку в имени файла интерфейса. Подключил сигнал clicked кнопки к методу k. Удалил ненужные вызовы int(QLineEdit()) в методах a, b и c. Метод text() уже возвращает строку, и не нужно преобразовывать его в int дважды. Изменил self.output.QPlainTextEdit.setPlainText(a) на self.output.setPlainText(str(result)), чтобы правильно установить простой текст. Убедитесь, что вы корректно адаптировали имена виджетов ('input1', 'input2', 'input3', 'output', 'pushButton') в соответствии с именами в вашем файле интерфейса (UI).