반응형
지난시간까지 완성한 코드는 아래와 같다.
import tkinter as tk
#윈도우 생성
root=tk.Tk()
#전체 이름
root.title('무게를 이용한 검수')
#창 크기 +붙은 부분은 좌상단 떨어진 위치
root.geometry("600x400+100+100")
#창 크기 조절 가능 여부 (디폴트 True)
root.resizable(True,True)
lab00=tk.Label(root,text="현재 무게",
font=('Arial 32 bold'),bg='black',fg="red",width=8,height=1)
lab00.grid(row=0,column=0,padx=10)
#######################################
import serial
import re
ser = serial.Serial(port='COM8', baudrate=9600, bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE, timeout=None)
while(True):
ser.close()
ser.open()
#값 불러오기
res=ser.readline()
#문자열로 변환
res=str(res)
#숫자 부분 추출, 추출 결과는 ['숫자'] 형태
res=re.findall("\d+.\d+",res)
#문자열 추출
if len(res)==0 :
res="set0"
else :
res=res[0]
#실수로 변환
res=float(res)
#제품 별 무게
if 36 <= res <=38 :
company="AMOS"
Product="Glue_Stick"
mycol="orange"
elif 7 <= res <= 8 :
company="Monami"
product="Name_Pan"
mycol="blue"
elif 5 <= res <= 6 :
company="Monami"
product="Ball_pan"
mycol="gray"
else :
company="NA"
product="NA"
mycol="white"
#Fixed Label
lab10=tk.Label(root,text="회사",font=('Arial 32 bold'),bg='black',fg="red",width=8)
lab10.grid(row=1,column=0,padx=10,pady=20)
lab20=tk.Label(root,text="제품명",font=('Arial 32 bold'),bg='black',fg="red",width=8)
lab20.grid(row=2,column=0,padx=10,pady=20)
#Non-Fixed Label
lab01=tk.Label(root,text=res,font=('Arial 32 bold'),bg="white",fg=mycol,width=8)
lab01.grid(row=0,column=1,padx=10,pady=20) #이렇게 .grid 따로 입력 해야 .destroy() 명령어 적용가능
lab11=tk.Label(root,text=company,font=('Arial 32 bold'),bg='white',fg=mycol,width=8)
lab11.grid(row=1,column=1,padx=10,pady=20)
lab21=tk.Label(root,text=product,font=('Arial 32 bold'),bg='white',fg=mycol,width=12)
lab21.grid(row=2,column=1,padx=10,pady=10)
root.update()
lab01.destroy()
제품 개수가 늘어나면 #제품 별 무게 부분의 if문이 엄청 길어질 것이다. 아래와 같이 엑셀을 입력하고, 엑셀에 입력된 데이터를 가지고 판별하도록 만들고 싶었다.
코드를 아래와 같이 수정해주었다.
작동은 잘 된다. 컴파일도 잘될까? csv 파일도 컴파일에 알아서 포함되려나 궁금했다. 한번 컴파일 해보았다.
cmd 명령어는 아래와 같다.
pyinstaller -w -F tkinter_ex_R1.py
일단 잘 된다. csv도 알아서 포함시키는구나. 근데...켜지는 속도가 느리다. -F 빼고 다시 해봤다. -F는 exe 하나만 생성되게 하는 기능이다.
와..훨씬빠르다. 10배는 빠른것 같다. -F 는 포함 안하는걸로.
반응형
'GUI 프로젝트 > 저울 연결하기 (시리얼통신) (Tkinter)' 카테고리의 다른 글
[파이썬 저울 연결] 16. GUI 만들기 #8. 코드 개선 (0) | 2022.01.14 |
---|---|
[파이썬 저울 연결] 15. GUI 만들기 #7. 개수 늘려서 속도테스트 (0) | 2022.01.13 |
[파이썬 저울 연결] 13. GUI 만들기 #6. exe 까만창 안뜨게, 파일 하나로 (0) | 2022.01.13 |
[파이썬 저울 연결] 12. GUI 만들기 #5. exe 만들어보기(컴파일) (0) | 2022.01.12 |
[파이썬 저울 연결] 11. GUI 만들기 #4. 무게로 회사와 제품명 판별 (0) | 2022.01.10 |
댓글