我有一个巨大的列表l1
里面有近1074个应用程序名称
['10 Best Foods for You' '104 找工作 - 找工作 找打工 找兼職 履歷健檢 履歷診療室' '11st' ...
'Hotwire Hotel & Car Rental App' 'Housing-Real Estate & Property'
'Houzz Interior Design Ideas']
我在控制台中遇到以下错误:
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "C:/Users/Samit Patil/Desktop/PlaystoreStudy Project/test_gui.py", line 496, in <lambda>
tk.Button(frame, text='Select query', width='15', font=("Open Sans", 13, 'bold'), bg='brown', fg='white',command=lambda c=i:query(c+1)).grid(row=i,column=1,sticky=W)
File "C:/Users/Samit Patil/Desktop/PlaystoreStudy Project/test_gui.py", line 439, in query
populate(frame)
File "C:/Users/Samit Patil/Desktop/PlaystoreStudy Project/test_gui.py", line 418, in populate
tk.Label(frame, text=l1[5], width='80',anchor=W,relief=GROOVE, height="4", font=("Calibri", 10, 'bold'), fg='black', bg='Green',wraplength=500).grid(row=i,column=0,sticky=W)
File "C:\ProgramData\Anaconda3\lib\tkinter\__init__.py", line 2766, in __init__
Widget.__init__(self, master, 'label', cnf, kw)
File "C:\ProgramData\Anaconda3\lib\tkinter\__init__.py", line 2299, in __init__
(widgetName, self._w) + extra + self._options(cnf))
_tkinter.TclError: character U+1f602 is above the range (U+0000-U+FFFF) allowed by Tcl
我的代码:
qy14apps = Toplevel(screen2)
qy14apps.title("Select one app")
adjustWindow(qy14apps) # configuring the window
l1=list_apps()
print (len(l1))
def onFrameConfigure(canvas):
canvas.configure(scrollregion=canvas.bbox("all"))
def populate(frame):
for i in range(len(l1)):
tk.Label(frame, text=l1[i], width='80',anchor=W,relief=GROOVE, height="4", font=("Calibri", 10, 'bold'), fg='black', bg='Green',wraplength=500).grid(row=i,column=0,sticky=W)
#l2=Label(text="\n", bg='white')
#l2.grid(row=i+1,column=0)
tk.Button(frame, text='Select app', width='15', font=("Open Sans", 13, 'bold'), bg='brown', fg='white',command="").grid(row=i,column=1,sticky=W)
canvas = tk.Canvas(qy14apps, borderwidth=0, background="#ffffff")
frame = tk.Frame(canvas, background="#ffffff")
vsb = tk.Scrollbar(qy14apps, orient="vertical", command=canvas.yview)
canvas.configure(yscrollcommand=vsb.set)
vsb.pack(side="right", fill="y")
canvas.pack(side="left", fill="both", expand=True)
canvas.create_window((4,4), window=frame, anchor="nw")
frame.bind("<Configure>", lambda event, canvas=canvas: onFrameConfigure(canvas))
populate(frame)
我不明白我哪里出错了,是不是因为名单太多了? 我已经将同样的概念应用于20个元素的列表,然后它就起作用了。 任何帮助都是值得赞赏的。谢谢
我宁愿将大量数据插入一个列表框,并将按钮链接到一个函数,该函数通过listbox变量检索所选列表项
要删除花括号,您可以绕过每个列表框条目,在将列表插入列表框之前循环列表,并通过其索引引用该条目。这将在将条目插入列表框时去掉大括号
相关问题 更多 >
编程相关推荐