【发布时间】:2020-12-18 11:12:36
【问题描述】:
我正在用 Python 编写一个用于微控制器板接口的 GUI,它使用户能够选择使用 tkinter 读取的每个通道的传感器类型。由于其中有几个,我想设置它们循环。现在的问题是,每当我为一个小部件选择一个选项时,其他小部件也会选择该选项。显然我希望能够为每个频道选择不同的选项。
import tkinter as tk
import numpy as np
root = tk.Tk()
class Window(tk.Frame):
def __init__(self, root):
self.root = root
tk.Frame.__init__(self, root)
self.root.title("Einstellungen")
self.root.geometry(newGeometry="320x200")
self.pack()
self.bg = tk.Canvas(self.root)
self.bg.pack()
analogChannelsIn = tk.LabelFrame(self.root, text="Input", width=100)
analogChannelsIn.pack()
self.AnaOptions = np.array([[["-None-"], ["K-type Thermocouple"], ["rH Sensor"]] * 7], 'object')
self.AnaOptions = self.AnaOptions.reshape([7, 3])
self.addm = np.array([tk.StringVar()] * 7, 'object')
self.acdd = np.zeros(7, 'object')
for i in range(0, 7, 1):
self.acdd[i] = tk.OptionMenu(analogChannelsIn, self.addm[i],*self.AnaOptions[i])
self.addm[i].set("-None-")
self.acdd[i].pack()
settings = Window(root)
settings.mainloop()
【问题讨论】:
-
你的根窗口上没有任何东西,也许你使用了错误的小部件作为父级?
-
我忽略了根窗口中打包的所有其他小部件,因为它们似乎无关紧要。有了他们,问题还是一样
标签: python tkinter tkinter.optionmenu