как сделать так что бы процессы шли независимо друг от друга , а не заглушал один другого ----------------------------------------------------------------------- Код | from PyQt4 import QtCore, QtGui
class MyWindow(QtGui.QWidget): def __init__(self, parent=None): QtGui.QWidget.__init__(self, parent) (self.tm, self.pr) = time.sleep, QtGui.qApp.processEvents self.label = QtGui.QLabel("Процесс не запущен") self.label.setAlignment(QtCore.Qt.AlignCenter) self.Btn = QtGui.QPushButton('&Кнопка1 АКТИВНА') # Создаём кнотку self.Btn2 = QtGui.QPushButton('&Кнопка2 АКТИВНА') # Создаём кнотку self.vbox = QtGui.QVBoxLayout() self.vbox.addWidget(self.label) self.vbox.addWidget(self.Btn) self.vbox.addWidget(self.Btn2) self.setLayout(self.vbox) self.connect(self.Btn, QtCore.SIGNAL("clicked()"), self.Tm1) # Метод обработки нажатия self.connect(self.Btn2, QtCore.SIGNAL("clicked()"), self.Tm2) # Метод обработки нажатия
def Tm1(self): # Создаём функцию растягивания окна #self.showMaximized() # Делаем максимальный размер окна self.setWindowOpacity(0.9) # Задаём прозрачность окна от 0.1 до 1.0 self.Btn.setDisabled(True) self.label.setText("Процесс запущенен") for i in range(-10,1): self.pr(), self.tm(1) self.Btn.setText("&Кнопка1 НЕ АКТИВНА: "+ (str(i)[1:])) self.Btn.setText("&Кнопка1 АКТИВНА") self.label.setText("Процесс окончен") self.Btn.setDisabled(False) self.pr(), self.tm(1) self.label.setText("Процесс не запущен")
def Tm2(self): # Создаём функцию растягивания окна #self.showMaximized() # Делаем максимальный размер окна self.setWindowOpacity(0.9) # Задаём прозрачность окна от 0.1 до 1.0 self.Btn2.setDisabled(True) self.label.setText("Процесс запущенен") for i in range(-10,1): self.pr(), self.tm(1) self.Btn2.setText("&Кнопка2 НЕ АКТИВНА: "+ (str(i)[1:])) self.Btn2.setText("&Кнопка2 АКТИВНА") self.label.setText("Процесс окончен") self.Btn2.setDisabled(False) self.pr(), self.tm(1) self.label.setText("Процесс не запущен")
if __name__ == "__main__": import sys app = QtGui.QApplication(sys.argv) window = MyWindow() window.setWindowTitle("Заголовок окна") window.resize(300, 70) window.show() sys.exit(app.exec_())
|
Это сообщение отредактировал(а) OzMod - 5.2.2016, 20:57
|