回答編集履歴
1
修正
test
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
from PyQt5 import QtWidgets,QtCore
|
16
16
|
|
17
|
-
from PyQt5.QtCore import QThread, QTimer,
|
17
|
+
from PyQt5.QtCore import QObject, QEventLoop, QThread, QTimer, pyqtSignal # 追加
|
18
18
|
|
19
19
|
from PyQt5.QtWidgets import QMainWindow
|
20
20
|
|
@@ -30,21 +30,45 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
|
33
|
+
|
34
|
+
|
35
|
+
# バックグラウンドで処理を行うためのクラス
|
36
|
+
|
37
|
+
class Worker(QObject):
|
38
|
+
|
39
|
+
start = pyqtSignal()
|
40
|
+
|
41
|
+
done = pyqtSignal()
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
def run(self):
|
46
|
+
|
47
|
+
self.start.emit()
|
48
|
+
|
49
|
+
self.done.emit()
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
|
33
55
|
class AK003(QMainWindow, Ui_MainWindow):
|
34
56
|
|
35
57
|
def __init__(self,parent=None):
|
36
58
|
|
37
59
|
super(AK003, self).__init__(parent)
|
38
60
|
|
39
|
-
# 下記
|
61
|
+
# 下記5行追加
|
40
62
|
|
41
63
|
self.thread = QThread()
|
42
64
|
|
43
|
-
self.
|
65
|
+
self.worker = Worker()
|
44
66
|
|
45
|
-
self.
|
67
|
+
self.worker.start.connect(self.minimize)
|
46
68
|
|
47
|
-
self.
|
69
|
+
self.worker.done.connect(self.thread.quit)
|
70
|
+
|
71
|
+
self.thread.started.connect(self.worker.run)
|
48
72
|
|
49
73
|
|
50
74
|
|
@@ -80,7 +104,9 @@
|
|
80
104
|
|
81
105
|
# デスクトップ表示スレッドの開始
|
82
106
|
|
107
|
+
self.worker.moveToThread(self.thread)
|
108
|
+
|
83
|
-
self.thread.start()
|
109
|
+
self.thread.start()
|
84
110
|
|
85
111
|
else:
|
86
112
|
|