почему нить не заканчивается - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь создать приложение для взаимодействия с USB-считывателем RFID на Raspberry pi.похоже, что решение заключается в использовании модуля trheading (в противном случае ввод данных приводит к сбою в работе). После некоторых очерков я сделал приложение, которое работает ... в первый раз.После этого в сообщении об ошибке говорится, что «потоки могут быть запущены только один раз» ... поэтому интерпретация заключается в том, что поток не заканчивается естественным образом ... почему ??

import time
import sys
import os
from tkinter import *
from tkinter.ttk import *
import threading


def activa_fil(self):
    print ('activant fil')
    fil.start()

def prova2():
    print('hola')
    print(Control.get())
    print(NumCorr.get())
    print(time.strftime("%H:%M:%S"))
    DisplayCorr.config(text=NumCorr.get())
    Llistacorr.insert(0, (Control.get(),NumCorr.get(), time.strftime("%H:%M:%S")))
    marc.contador +=1
    Contador.config (text=marc.contador)
    print(marc.contador)
    file = open("prova.txt", "a")
    file.write(Control.get())
    file.write(NumCorr.get())
    file.write (time.strftime("%H:%M:%S"))
    file.write('\n')
    file.close()
    NumCorr.after(500, NumCorr.delete(0,END))

def tick():
    time_string = time.strftime("%H:%M:%S")
    Hora.config(text=time_string)
    Hora.after(200, tick)

def canvia_focus(self):
    NumCorr.focus()

fil=threading.Timer(0.5, prova2)


marc = Tk()
marc.geometry('480x320')
marc.bind_all(''<'Key-Return'>'', activa_fil)


marc.contador =0

Control = Combobox(marc)
Control['values']=('sortida','can cuias','can campanya','papiol','sortida papiol', 'can olivero', 'ullastrell', 'coll olesa','pla fideuer','aeri', 'arribada')
Control.config(font="helvetica 30", )
Control.grid(column='0', row='0', columnspan='2')

Llistacorr = Listbox(marc)
Llistacorr.config(font='arial')
Llistacorr.grid_propagate(0)
Llistacorr.grid(column='0', row='1', rowspan='3')

DisplayCorr=Label(marc, font='Arial 10')
DisplayCorr.grid(column='1', row='1')

NumCorr = Entry(marc)
NumCorr.config(font='helvetica 6')
Control.bind('<<ComboboxSelected>>', canvia_focus)
NumCorr.grid(column='0', row='4', columnspan='2')

Contador=Label(marc, font='arial 30')
Contador.grid(column='1', row='2')

Hora=Label(marc, font='arial 30')
Hora.grid(column='1', row='3')
tick()

marc.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...