Mise à jour d'un label en Tk
tatal21820
Messages postés
37
Statut
Membre
-
yg_be Messages postés 24281 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 24281 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Voici un petit programme qui affiche mes rendez-vous à partir d'un calendrier google.
import locale
import urllib.request
from datetime import timedelta, datetime
from tkinter import *
import icalendar
import pytz
import recurring_ical_events
INTERVAL = 2000
URL = "https://calendar.google.com/calendar/ical/********gmail.com/private-*****************" \
"/basic.ics"
master = Tk()
locale.setlocale(locale.LC_ALL, "fr_FR")
# master.attributes("-fullscreen", True)
# master.bind("<Escape>", lambda e: master.destroy())
master.config(background="black")
master.geometry("750x500")
frm5 = LabelFrame(master, text="Tatal", font="helvetica 15", fg="WHITE", bg="black", height=800, relief=GROOVE)
frm5.place(x=20, y=10, width=500)
def task():
# Agenda Tatal
dat2 = datetime.now(pytz.timezone("Europe/Paris"))
start_date = dat2.date()
end_date = start_date + timedelta(days=2)
ical_string = urllib.request.urlopen(URL).read()
calendar = icalendar.Calendar.from_ical(ical_string)
events = recurring_ical_events.of(calendar).between(start_date, end_date)
for event in events:
start = event["DTSTART"].dt
duration = event["DTEND"].dt - event["DTSTART"].dt
nom = event["SUMMARY"]
demain = event["DTSTART"].dt + timedelta(days=1)
if start == demain:
print(nom + "Demain" + start.strftime("%Hh%M"))
if start == dat2:
print(nom + "Aujourdhui" + start.strftime("%Hh%M"))
agd_tatal = Label(frm5, text=nom + " " + start.strftime("%A %d %B %Hh%M"), font="Arial 16", fg="WHITE",
bg="black")
agd_tatal.pack(padx=10, pady=10)
if not events:
agd_tatal = Label(frm5, text="Aucun rendez-vous aujourdhui", font="Arial 12", fg="WHITE", bg="black")
agd_tatal.pack(padx=10, pady=10)
# Re-run this task in INTERVAL milliseconds
master.after(INTERVAL, task)
master.after(INTERVAL, task)
master.mainloop()
# if __name__ == "__main__":
J'ai deux problèmes :
- À chaque demande (toutes les 2 secondes) le Label n'efface pas les anciennes demandes.
- Les conditions "aujourd'hui" et "demain" ne fonctionnent pas.
Aidez-moi s'il vous plaît (le plus important c'est le Label).
D'avance merci
A voir également:
- Mise à jour d'un label en Tk
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Mise a jour chromecast - Accueil - Guide TV et vidéo
- Mise en forme conditionnelle excel - Guide
- Mise à jour libre office - Accueil - Bureautique
2 réponses
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonjour,
en lignes 42 et 47, tu ajoutes un label, et tu n'en supprimes jamais.
pour supprimer tous les labels:
for l in frm5.winfo_children():
l.destroy()