<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Vikram Samak</title>
    <description>The latest articles on DEV Community by Vikram Samak (@vikramsamak).</description>
    <link>https://dev.to/vikramsamak</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F825721%2F0720df16-8bb3-4579-a8ad-b7d1890bc3f3.jpeg</url>
      <title>DEV Community: Vikram Samak</title>
      <link>https://dev.to/vikramsamak</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vikramsamak"/>
    <language>en</language>
    <item>
      <title>How to update(insert data fetched from API) multiple entry widgets of tkinter after X seconds ?</title>
      <dc:creator>Vikram Samak</dc:creator>
      <pubDate>Sat, 05 Mar 2022 06:07:17 +0000</pubDate>
      <link>https://dev.to/vikramsamak/how-to-updateinsert-data-fetched-from-api-multiple-entry-widgets-of-tkinter-after-x-seconds--5542</link>
      <guid>https://dev.to/vikramsamak/how-to-updateinsert-data-fetched-from-api-multiple-entry-widgets-of-tkinter-after-x-seconds--5542</guid>
      <description>&lt;p&gt;I am working on a currency dashboard project, in which I am showing the values of currencies (fetched from API) in entry widgets. And I want to update them after every 10 seconds, how can I do that ?``&lt;/p&gt;

&lt;p&gt;`&lt;/p&gt;

&lt;h1&gt;
  
  
  MAIN_PART
&lt;/h1&gt;

&lt;p&gt;from matplotlib.pyplot import text&lt;br&gt;
import schedule&lt;br&gt;
import time&lt;br&gt;
from tkinter import *&lt;br&gt;
import tkinter&lt;br&gt;
import json&lt;br&gt;
from tkinter import font&lt;/p&gt;

&lt;p&gt;import requests&lt;/p&gt;

&lt;p&gt;def update():&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    res = requests.get("https://freecurrencyapi.net/api/v2/latest?apikey=5f880ac0-9921-11ec-8d8a-a5086e90d9d6",params={"base-currency":"USD"})
    datafromserver = res.json()
    BHD = datafromserver['data']['BHD']

    OMR= datafromserver['data']['OMR']

    JOD= datafromserver['data']['JOD']

    GBP= datafromserver['data']['GBP']

    KYD= datafromserver['data']['KYD']

    EUR= datafromserver['data']['EUR']

    CHF = datafromserver['data']['CHF']

    INR = datafromserver['data']['INR']

    currencies=[BHD,OMR,JOD,GBP,KYD,EUR,CHF,INR]

    print(currencies)



    E1.delete(0,END)
    E1.insert(0,BHD)

    E2.delete(0, END)
    E2.insert(0, OMR)

    E3.delete(0,END)
    E3.insert(0,JOD)

    E4.delete(0, END)
    E4.insert(0, GBP)

    E5.delete(0,END)
    E5.insert(0,KYD)

    E6.delete(0,END)
    E6.insert(0,EUR)

    E7.delete(0, END)
    E7.insert(0, CHF)

    E8.delete(0,END)
    E8.insert(0,INR)

    L9.config(fg="Green")
    E1.after(5000,update)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;window = tkinter.Tk()&lt;br&gt;
window.title("CURRENCY DASHBOARD")&lt;br&gt;
window.geometry('1300x300')&lt;/p&gt;

&lt;p&gt;mainlabel = Label(window, text="Real Time Currency Dashboard",font=("Arial", 30))&lt;br&gt;
mainlabel.grid(row=0,columnspan=5)&lt;/p&gt;

&lt;p&gt;L1 = Label(window, text="BHD",font=("Arial",15))&lt;br&gt;
L1.grid(row=1, column=1, padx=50, pady=25)&lt;br&gt;
E1 = Entry(window,font=("Arial", 15))&lt;br&gt;
E1.grid(row=2,column=1,padx=50)&lt;/p&gt;

&lt;p&gt;L2 = Label(window, text="OMR",font=("Arial",15))&lt;br&gt;
L2.grid(row=1, column=2, padx=50, pady=25)&lt;br&gt;
E2 = Entry(window,font=("Arial", 15))&lt;br&gt;
E2.grid(row=2,column=2,padx=50)&lt;/p&gt;

&lt;p&gt;L3 = Label(window, text="JOD",font=("Arial",15))&lt;br&gt;
L3.grid(row=1, column=3, padx=50, pady=25)&lt;br&gt;
E3 = Entry(window,font=("Arial", 15))&lt;br&gt;
E3.grid(row=2,column=3,padx=50)&lt;/p&gt;

&lt;p&gt;L4 = Label(window, text="GBP",font=("Arial",15))&lt;br&gt;
L4.grid(row=1,column=4,padx=50, pady=25)&lt;br&gt;
E4 = Entry(window,font=("Arial", 15))&lt;br&gt;
E4.grid(row=2, column=4, padx=50)&lt;/p&gt;

&lt;p&gt;L5 = Label(window, text="KYD", font=("Arial", 15))&lt;br&gt;
L5.grid(row=3,column=1,padx=50, pady=25)&lt;br&gt;
E5 = Entry(window,font=("Arial", 15))&lt;br&gt;
E5.grid(row=4, column=1, padx=50)&lt;/p&gt;

&lt;p&gt;L6 = Label(window, text="EUR", font=("Arial", 15))&lt;br&gt;
L6.grid(row=3,column=2,padx=50, pady=25)&lt;br&gt;
E6 = Entry(window,font=("Arial", 15))&lt;br&gt;
E6.grid(row=4, column=2, padx=50)&lt;/p&gt;

&lt;p&gt;L7 = Label(window, text="CHF", font=("Arial", 15))&lt;br&gt;
L7.grid(row=3,column=3,padx=50, pady=25)&lt;br&gt;
E7 = Entry(window,font=("Arial", 15))&lt;br&gt;
E7.grid(row=4, column=3, padx=50)&lt;/p&gt;

&lt;p&gt;L8 = Label(window, text="INR", font=("Arial", 15))&lt;br&gt;
L8.grid(row=3, column=4, padx=50, pady=25)&lt;br&gt;
E8 = Entry(window,font=("Arial", 15))&lt;br&gt;
E8.grid(row=4, column=4, padx=50)&lt;/p&gt;

&lt;p&gt;L9=Label(window,text="UPDATING")&lt;br&gt;
L9.grid(row=5, columnspan=5 ,padx=50)&lt;br&gt;
update()&lt;br&gt;
window.mainloop()&lt;br&gt;
`&lt;/p&gt;

&lt;p&gt;OUTPUT&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--46XzkHN_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aiiyqd9cxqeibvx57xie.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--46XzkHN_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aiiyqd9cxqeibvx57xie.png" alt="Image description" width="880" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>tkinter</category>
      <category>api</category>
    </item>
  </channel>
</rss>
