Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import threading
- import time
- from tkinter import *
- from tkinter import ttk
- from serial.tools import list_ports
- class App(ttk.Frame):
- def __init__(self, root, stringVar):
- """ Initialize the Frame"""
- ttk.Frame.__init__(self, root)
- self.root = root
- self.stringvar = stringVar
- threading.Thread.__init__(self)
- self.grid()
- self.label = ttk.Label(mainframe, textvariable=coms).grid(column=0, row=0, sticky=(W, E))
- self.run()
- def run(self):
- loop_active = True
- while loop_active:
- self.updatePorts()
- self.root.update()
- time.sleep(0.1)
- def updatePorts(self):
- self.list = list_ports.comports()
- self.portList = ""
- for port in self.list:
- self.portList += "{}\t{}\n".format(port.device, port.description)
- self.stringvar.set(self.portList)
- root = Tk()
- root.title("COM")
- coms = StringVar()
- mainframe = ttk.Frame(root, padding="3 3 12 12")
- mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
- root.columnconfigure(0, weight=1)
- root.rowconfigure(0, weight=1)
- app = App(root, coms)
- root.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement