Я хочу создать приложение управления запасами, используя raspberry-pi 3, MySql, библиотеку Kivy для интерфейса пользователя и USB-сканер штрих-кода.
Интерфейс пользователя имеет 2 кнопки: scanning
и back to previous page
Проблема в том, что когда я нажимаю scanning
, он запускает скрипт (barcodeReader.py
) в качестве метода обратного вызова.Пользовательский интерфейс "зависает" и нажатие back to previous page
(которое должно завершить процесс, который запустил сценарий barcodeReader.py
) не имеет никакого эффекта.
Может кто-нибудь помочь найти решение этой проблемы?
Я добавил некоторый код ниже.
Кнопки для пользовательского интерфейса Kivy созданы в файле .kv
.
barcodeReader.py
#!/usr/bin/python
import sys
import os
def barcode_reader():
# read the code
return barcodeString
if __name__ == '__main__':
while True:
code = barcode_reader()
with open('/home/pi/barcode.txt', 'w') as f:
f.write(code)
print code
mainApp.py
class DisplayTableData(Screen):
def __init__(self,**kwargs):
super (DisplayTableData,self).__init__(**kwargs)
def startScan(self):
os.system("python barcodeScanner.py &")
def logOutScope(self,*args):
self.manager.current = 'screenLogin'