0 / 0 / 0
Регистрация: 03.01.2015
Сообщений: 19
1
PyQt5

Обновление QTextEdit в цикле

16.01.2017, 13:09. Показов 3305. Ответов 2

Студворк — интернет-сервис помощи студентам
В данном случае весь необходимый мне текст добавляется сразу после того, как закончился цикл, а нужно, чтобы текст в QTextEdit добавлялся с каждой итерацией цикла. При этом ещё и во время выполнения цикла происходит эффект зависания программы. Может кто знает решение данной проблемы? Может каким-то другим путём?

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import sys
from PyQt5.QtWidgets import QWidget, QApplication, QTextEdit, QPushButton, QVBoxLayout
from ipaddress import ip_address as ip
from os import system
 
 
class Example (QWidget):
 
    def __init__(self):
        super().__init__()
        self.initUI()
 
    def initUI(self):
 
        self.TextEdit = QTextEdit()
        
        button = QPushButton('Start', self)
        button.clicked.connect(self.doAction)
 
        vbox = QVBoxLayout()
        vbox.addWidget(self.TextEdit)
        vbox.addWidget(button)
        self.setLayout(vbox)
 
        self.resize(300,300)
        self.show()
 
    def doAction(self):
        firstIP = ip('192.168.0.1')
        lastIP = ip('192.168.0.3')
        firstIP -= 1
        while firstIP != lastIP:
            firstIP += 1
            system('ping -n 2 -w 100 ' + str(firstIP))
            self.TextEdit.append('\nping ' + str(firstIP))
 
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.01.2017, 13:09
Ответы с готовыми решениями:

Обновление окна QTextEdit в реальном времени
Есть графический интерфейс на PyQt5. В этом окне есть qtextedit - окно для ввода/вывода текста,...

Обновление Label в цикле
Требуется обновлять Label в цикле for, вот мой код, но в конечном итоге, я так понимаю, только...

Обновление записей в цикле
Всем доброго дня! Есть форма на которой распложен DataGridView1 и 2 кнопки первая кнопка...

Обновление данных в цикле
Подскажите как можно реализовать обновление строк в бд из данных массива? Есть такой запрос ...

Обновление интерфейса в цикле скрипта
Доброго дня, столкнулся с такой необходимостью, как если скрипт выполняется очень долго - процесс...

2
Эксперт Python
4614 / 2035 / 359
Регистрация: 17.03.2012
Сообщений: 10,102
Записей в блоге: 6
16.01.2017, 15:30 2
Если я правильно понял, о чём речь - QApplication.processEvents().
1
0 / 0 / 0
Регистрация: 03.01.2015
Сообщений: 19
16.01.2017, 15:53  [ТС] 3
Да, спасибо, помогло. Сейчас ещё чуточку пошаманить и думаю заработает как нужно.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.01.2017, 15:53
Помогаю со студенческими работами здесь

Обновление содержания textBox | richTextBox в цикле for
Все доброго времени! Есть файл, он открывается как бинарный, данные выводятся в виде строки....

Обновление формы при изменении в цикле свойств элементов управления
Есть например такой код: for ( int i = 1; i < 100; i++ ) { textBox1.Text = i.ToString(); ...

Как програмно в цикле не доходя до конца, пропустить шаг в цикле?
Как програмно в цикле не доходя до конца, пропустить шаг в цикле?

При склеивании строк в цикле, уже на пятом цикле возникает переполнение памяти
При склеивании строк в цикле, уже на пятом цикле возникает переполнение памяти. Что не так и как...

QTextEdit
Добрый вечер у меня произошла вот такая проблема. Суть: Есть у меня класс TextEdit...

QTextEdit
Привет подскажите пожалусто как сделать в текстовом редакторе поле на котором можна ставить дебаг...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru