[英]Unable to see images using Tkinter Treeview for database processing
我正在開發一個數據庫項目,運行以下代碼不會顯示給定的圖像。 完整的代碼可以在這里找到。
def populateProducts (self, productName, plist):
rows = self.db.getProductsFromNameNIL(productName)
auximage = Image.open ("/home/sourabh/Documents/Github/DBMS-Lab-Project/TkinterReference/small.png")
self.auxphoto = ImageTk.PhotoImage (auximage)
plist.delete (*plist.get_children ())
for row in rows:
print (row)
plist.insert ('', 'end', text = '#0s text', values = row, image = self.auxphoto)
def browse (self):
browseWin = Tk ()
browseWin.title ("Browse Products")
browseWin.protocol("WM_DELETE_WINDOW", lambda: self.on_closing (browseWin)) # handle window closing
Label(browseWin, text = "Enter product name").grid (row = 0, column = 0, sticky = W)
prodText = StringVar()
Entry(browseWin, textvariable=prodText).grid (row = 0, column = 1, sticky = W)
Button (browseWin, text = 'Switch to Login', command = lambda: self.switchToLogin (browseWin)).grid (row = 20, sticky = W, pady = 4)
############ Product List #############
plist = ttk.Treeview (browseWin)
plist['columns'] = ('pid', 'pname', 'sellerid', 'price', 'tstock', 'pickupaddress', 'description', 'rating')
plist.heading('#0', text = 'Pic directory', anchor = 'center')
plist.column ('#0', anchor = 'w', width = 200)
plist.heading ('pid', text = 'Product ID')
plist.heading ('pname', text = 'Product Name')
plist.heading ('sellerid', text = 'Seller ID')
plist.heading ('price', text = 'Price')
plist.heading ('tstock', text = 'Total Stock')
plist.heading ('pickupaddress', text = 'Pickup Address')
plist.heading ('description', text = 'Description')
plist.heading ('rating', text = 'Rating')
plist['show'] = 'headings'
plist.grid(row = 1, column = 0, rowspan = 18, columnspan = 50)
Button(browseWin, text= 'Search', command= lambda: self.populateProducts (prodText.get (), plist)).grid(row=0, column = 2, sticky=W)
browseWin.mainloop()
如果要運行項目進行測試,請在該GUI目錄中運行init.sh,方法是在終端中鍵入“ bash init.sh”,然后運行“ main.py”。 為了進行測試,請輸入詳細信息:'Nikhil'作為用戶名,'hi'作為密碼,然后選擇角色作為'Customer',然后選擇'Enter',然后選擇'Browse Products',然后輸入'asg'。
固定! 問題在於生產線
plist['show'] = 'headings'
刪除后,圖像出現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.