Python тк выберите последовательный порт из списка - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь выбрать компорт, используя python tk и поле со списком. Я нашел несколько примеров создания выпадающего меню, которое отображает порт и имя, но не может понять, как получить только устройство, например COM1, чтобы я мог открыть порт, это то, что я использую, но порт получает полное имя с описанием, а не только устройство, как мне получить только часть устройства?

import tkinter as tk
import tkinter.ttk as ttk
import serial.tools.list_ports
import serial

def serial_ports():    
    return serial.tools.list_ports.comports()

def on_select(event=None):

    print("event.widget:", event.widget.get())
    port = event.widget.get()
    try:
        ser = serial.Serial(port, 115200, timeout=None)
    except serial.SerialException:
        print('Error Opening Port')
        exit(0)        

root = tk.Tk()

cb = ttk.Combobox(root, values=serial_ports())
cb.pack()

cb.bind('<<ComboboxSelected>>', on_select)

root.mainloop()
...