需要帮助...有必要从 OptionMenu 中获取有关所选参数(PORT、BAUDRATE)的数据并将其写入变量,以便稍后在此行中使用它
board = Arduino("115200", port=("COM5"))
这是相关的代码片段
import serial.tools.list_ports
import tkinter
from tkinter import *
from Arduino import Arduino
import time
ports = serial.tools.list_ports.comports()
for port, desc, hwid in sorted(ports):
port
board = Arduino("115200", port=("COM5"))
head = Tk()
head.geometry('500x300')
head.title('Лаунчер')
head.resizable(width = False,height = False)
head.wm_attributes('-alpha',0.95)
def WinSon():
head.withdraw()
win = Toplevel()
win.geometry('800x500')
win.title('Набор')
win.protocol("WM_DELETE_WINDOW", lambda: head.destroy())
win.mainloop()
canvas = Canvas(head,width = 500,height = 300)
canvas.pack()
frame = Frame(head)
frame.place(relwidth = 1,relheight = 1)
t_p = Label(frame, text='ПОРТ', bg='#A52A2A')
t_p.place(x=65, y=150, width=150, height=30)
PortList = ['Выберите порт', port]
var_p = StringVar(frame)
var_p.set(PortList[0])
opt_p = OptionMenu(frame, var_p, *PortList)
opt_p.place(x=65, y=180, width=150, height=30)
t_bd = Label(frame,text = 'БОДРЕЙТ',bg = '#A52A2A')
t_bd.place(x = 285,y = 150,width = 150,height = 30)
BaudList = ['Выберите скорость',9600,19200,38400,57600,115200]
var_bd = StringVar(frame)
var_bd.set(BaudList[0])
opt_bd = OptionMenu(frame, var_bd, *BaudList)
opt_bd.place(x = 285,y = 180,width = 150,height = 30)
Redo_Button = Button(frame,text = 'Далее',font = ("lucida console", 20,),command = WinSon)
Redo_Button.place(x = 192.5,y = 230)
head.mainloop()
要从您的价值中获取价值,
StringVar请使用该方法.get()例如,要从中获取值,
var_bd = StringVar()需要编写以下命令:您的功能永远不会相同: