Найти - Пользователи
Полная версия: Обращение к объектам
Начало » GUI » Обращение к объектам
1
rick
Создал шаблон в PyQt, сгенерировал код питон импортирую его в основной файл. Как мне обратиться к объектам, например мне надо из lineEdit взять число в переменную ‘a’ в типе данных int. Произвести операции и в текстовом формате вывести значения в textEdit, при чем в textEdit выводит почему то только одну надпись, а должен в зависимости от количества итераций.
     def MyFunction(self):
        a = int(self.ui.lineEdit.text())
        b = float(self.ui.lineEdit_2.text())
        c = int(self.ui.lineEdit_3.text())
        d = int(self.ui.lineEdit_3.text())
        i=0
        if d<c:
            self.ui.textEdit.setText('Начислений нет, сумма за неполный период= '+str(a))
        elif d>=c:
            e=a
            n=d/c  # Сколько раз будет происходить начисление процентов за весь срок содержания суммы
            while i<n:  # Лимит
                e+=(a*b/100);i+=1  # Начисление процентов
                self.ui.textEdit.setText('Сумма за ' + str(i) + ' начисление = ' + str(e) + ' руб.')
                if i==n:
                    self.ui.textEdit.setText('Разница "внесение-начисление"= ' + str(int(e - a)) + ' руб.')
Выводит получается только эту, последнюю строку
elif i==n:
self.ui.textEdit.setText('Разница “внесение-начисление”= ‘ + str(int(e - a)) + ’ руб.')
Заранее спасибо.
vic57
QTextEdit.append()
rick
vic57
Спасибо. Но все равно, он как будто не видит блок while и выводит после одной итерации

     def MyFunction(self):
        a = int(self.ui.lineEdit.text())
        b = float(self.ui.lineEdit_2.text())
        c = int(self.ui.lineEdit_3.text())
        d = int(self.ui.lineEdit_3.text())
        i = 0
        if d < c:
            self.ui.textEdit.append('Начислений нет, сумма за неполный период= +str(a)')
        elif d >= c:
            e = a
            n = d/c  # Сколько раз будет происходить начисление процентов за весь срок содержания суммы
            while i < n:  # Лимит
                e += (a*b/100)
                i += 1  # Начисление процентов
                self.ui.textEdit.append('Сумма за ' + str(i) + ' начисление = ' + str(e) + ' руб.')
                if i == n:
                    self.ui.textEdit.append('Разница "внесение-начисление"= ' + str(int(e - a)) + ' руб.')
vic57
          while i < n:  # Лимит
         print i,n# debug
                e += (a*b/100)
для вычислений надо использовать float
rick
vic57
Объясни плиз, что за дебаг?
what does it mean? print i,n# debug
vic57
посмотри в консоли выхлоп
rick
vic57
все хорошо, в Run выдает Process finished with exit code 0
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB