#python
Вопрос:
def info(state):
if state == QtCore.Qt.Checked:
while True:
time.sleep(1)
print('pos')
else:
pass
def gpas():
s = Thread(target = info).start()
ui.checkBox_2.stateChanged.connect(gpas)
выход:
TypeError: info() missing 1 required positional argument: 'state'
Комментарии:
1. Функция
info
определена так, чтобы принимать аргумент, но то, как вы ее вызываете, вы ей его не даете
Ответ №1:
Вы несете ответственность за получение состояния кнопки и передачу его потоку. Поток не имеет никакого отношения к Qt.
def info(state):
if state:
while True:
time.sleep(1)
print('pos')
else:
pass
def gpas():
s = Thread(target = info, args=(ui.checkBox_2.isChecked(),)).start()
ui.checkBox_2.stateChanged.connect(gpas)