다음 코드는 매초마다 임의의 임의의 줄을 그립니다. 내가하고 싶은 것은 각 선을 이미 그려 두는 것입니다. 그렇게하는 가장 좋은 방법은 무엇입니까?PyQT5 - 일시 중지를 사용하여 하나씩 줄 추가
내가 대답하는 사용자 인터페이스를 할 수있는 QTimer
를 사용할 필요가 있음을 알고 있지만 처음에는 점점 더 많은 선을 그리는 방법을 알 필요가 ...
QGraphicsView
을 사용해야합니까? PyQt는 응용 프로그램에서
time.sleep
을 사용
from random import random
import sys
from time import sleep
from PyQt5.QtWidgets import QWidget, QApplication
from PyQt5.QtGui import QPainter
from PyQt5.QtCore import QTimer
LINES = [
(500*random(), 500*random(), 500*random(), 500*random())
for _ in range(50)
]
class Interface(QWidget):
def __init__(self):
super().__init__()
self.max = len(LINES)
self.cursor = 0
self.painter = QPainter()
self.setFixedSize(500, 500)
self.show()
def paintEvent(self, e):
self.painter.begin(self)
self.drawsetpbystep()
self.painter.end()
def drawsetpbystep(self):
if self.cursor < self.max:
self.painter.drawLine(*LINES[self.cursor])
self.update()
sleep(0.25)
self.cursor += 1
if __name__ == '__main__':
app = QApplication(sys.argv)
interface = Interface()
sys.exit(app.exec_())
그것? 당신은 이미 SO가 코딩 서비스가 아니라는 것을 알기에 충분한 평판을 얻었습니다. – eyllanesc
@eyllanesc 질문이 방금 업데이트되었습니다. – projetmbc