擅长:python、mysql、java
<p>同样,您的代码是不可验证的,留下了很多问题,但是通过稍微清理代码,您可以使您的组合框易于重用,并相应地返回元素位置。在</p>
<pre><code>from tkinter import ttk, Tk, Frame
class DropDown(ttk.Combobox):
def set_list(self, argslist):
self['values'] = argslist
self.current(1)
self.pack()
class OnTap:
def __init__(self, parent):
self.parent = parent
body = Frame(self.parent)
body.grid(row=1, column=1, sticky="ew")
list1 = ['Empty', 'Jack', 'Coke', 'Tonic']
tappos = [0 for x in range(7)]
for i in range(5):
l = ttk.Label(body, text="Bottle "+str(i+1)+": ")
l.pack()
tappos[i] = DropDown(body).set_list(list1)
if __name__ == '__main__':
root = Tk()
app = OnTap(root)
root.mainloop()
</code></pre>
<p>此外,我不知道您是否计划为每个组合框分配不同的值,但这种方法从长远来看会使事情变得更容易。在</p>