前提・実現したいこと
tkinterで定期実行をさせる
発生している問題・エラーメッセージ
bitflyerAPIでコインの最新値段を取得し、1000msごとに更新してラベルとして表示したいが 取得はできるものの二枚目、三枚目のように違う場所に連続で表示されてしまう 理想は、左側の79.15の部分に常に表示したい。
該当のソースコード
#倍率設定 up_mag = tkinter.LabelFrame(self.master,text=u'倍率設定', foreground='gray85') up_mag.pack(side=tkinter.LEFT,anchor=tkinter.NW) up_mag_ju = tkinter.LabelFrame(up_mag,text='BTC_JPY') up_mag_ju.pack() locale.setlocale(locale.LC_CTYPE, "Japanese_Japan.932") #api_key api_key_main = secret_coin.api_key #api_secret api_secret_main = secret_coin.api_secret #実際にapiを叩く api = pybitflyer.API(api_key=api_key_main, api_secret=api_secret_main) #直近のxrp取引価格 base_price = api.ticker(product_code="XRP_JPY")["ltp"] def equal(): btc_buy_equal.delete(0, tkinter.END) ii = float(btc_buy_price.cget('text')) uu = float(btc_buy_mag.get()) a = ii * uu btc_buy_equal.insert(tkinter.END,a) def start_button(): self.master.after(1000,price_load) def price_load(): btc_buy_price = tkinter.Label(up_mag_ju,text=base_price) btc_buy_price.pack(anchor=tkinter.NW,side=tkinter.LEFT,ipadx=5) self.master.after(1000,start_button) start_button_1 = tkinter.Button(self.master,text='Start',command=start_button,width=10,height=10) start_button_1.place(x=600,y=600) btc_buy_price = tkinter.Label(up_mag_ju,text=base_price) btc_buy_price.pack(side=tkinter.LEFT,ipadx=5) btc_buy_1 = tkinter.Label(up_mag_ju,text='×') btc_buy_1.pack(side=tkinter.LEFT,ipadx=5) btc_buy_mag = tkinter.Entry(up_mag_ju,width=5) btc_buy_mag.pack(side=tkinter.LEFT,padx=5) btc_buy_2 = tkinter.Button(up_mag_ju,text='=',command=equal,width=5) btc_buy_2.pack(side=tkinter.LEFT,padx=5, pady=40) btc_buy_equal = tkinter.Entry(up_mag_ju,width=5) btc_buy_equal.pack(side=tkinter.LEFT,padx=5)
試したこと
pythonの勉強を始めて3日目なので、コードの文法や書き方のミスについては大目に見てほしいです(´;ω;`)
mainloop()のコードはこの下に書いてあります!
補足情報(FW/ツールのバージョンなど)
python3.8.9
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。