2017-06-23 90 views
0

我是新来的Python + Tkinter的将数据插入到For循环文本组件,Tkinter的python3

我试图用FOR循环

的问题是值输入到一个文本组件,文本组件不在For循环执行期间显示任何内容当for循环结束时,它显示所有值。

如何在for循环中显示插入的值。

见的代码

for item in liList: 
     listDict = {} 
     # get a tag href 
     listATag = item.find_all("a", attrs={"class": "product-image"})[0] 
     listATagHref = listATag['href'] 
     listDict["purchaseLink"] = listATagHref 

     imgPageRequest = requests.get(listATagHref) 
     imgPageData = imgPageRequest.text 
     imgPageSoup = BeautifulSoup(imgPageData, 'lxml') 
     try: 
      productImgDiv = imgPageSoup.find_all('div', attrs={"class": "product-image"})[0] 
      imgATag = productImgDiv.find_all('a')[0]['href'] 
      largeThumbFileName = (imgATag.split('/')[-1]) 
      tempImgNameList.append(largeThumbFileName) 
      print(listATagHref) 
      textBox.insert(END,listATagHref+'\n') 
      etc... 

回答

1

你需要调用的小部件update要添加新的数据,因为它的刷新,每次迭代后显示的新值的最后一行。这是因为Tk mainloop通常会捕获窗口小部件上的新信息并更新它,但是当您处于这样的循环中时,它将无法检查,直到循环结束。

如果您定义为rootTk(),那么您可以致电root.update(),或者根据实际的小部件本身。这将发生在您的for循环的末尾。