[tkinter] Ajouter un label chaque minute
Résolutatal21820 Messages postés 37 Statut Membre -
Bonjour,
Je voudrais faire apparaître la première ligne d'information pendant une minute, puis la 2ième, 3ième et ainsi de suite. Est-ce possible?
D'avance merci
import feedparser
from tkinter import *
from tkinter import Tk, ttk
master = Tk()
master.attributes('-fullscreen', True)
master.bind('<Escape>', lambda e: master.destroy())
master.config(background='black')
frm1 = LabelFrame(master, text='France 24', font='Arial 15', fg='WHITE', bg='black', height=200, relief=GROOVE)
frm1.place(x=320, y=100)
feed = feedparser.parse("http://www.france24.com/fr/france/rss")
for entry in feed.entries:
info = Label(frm1, text=entry.title, font='Arial 16', fg='WHITE', bg='black')
info.pack()
# print(entry.title)
master.mainloop()
Windows / Chrome 104.0.0.0
6 réponses
-
Bonjour,
C'est bizarre de créer un label pour chaque ligne
Ce serait plus sympa avec le widget Text
Exemple:
import feedparser from tkinter import * from tkinter import Tk, ttk master = Tk() master.attributes('-fullscreen', True) master.config(background='blue') display = Text(master, width = 100, height = 100) display.place(x = 10, y = 10) feed = feedparser.parse("http://www.france24.com/fr/france/rss") row = 0.0 for entry in feed.entries: display.insert(row, entry.title+'\n') row+=5.0 master.mainloop() -
Ça fait partie d'un plus grand programme, plus facile pour la disposition, c'est une ébauche. Quand j'aurai obtenu le résultat que je souhaite, je ferais mieux. Je suis débutant.
-
J'ai rajouté un code ..
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
un exemple:
from tkinter import * from tkinter import Tk, ttk master = Tk() master.attributes('-fullscreen', True) master.bind('<Escape>', lambda e: master.destroy()) master.config(background='black') frm1 = LabelFrame(master, text='France 24', font='Arial 15', fg='WHITE', bg='black', height=200, relief=GROOVE) frm1.place(x=320, y=100) feed = ("un","deux","trois") def aff(info,feed,n): info.config(text=feed[n]) if n+1<len(feed): n +=1 else: n = 0 info.after(2000,aff,info,feed,n) info = Label(frm1, font='Arial 16', fg='WHITE', bg='black') info.pack() aff(info,feed,0) # print(entry.title) master.mainloop() -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Merci, je vais creuser la question, pour l'instant ça affiche 1,2,3
Un grand merci
-
plus proche de ton exemple:
import feedparser from tkinter import * from tkinter import Tk, ttk master = Tk() master.attributes('-fullscreen', True) master.bind('<Escape>', lambda e: master.destroy()) master.config(background='black') frm1 = LabelFrame(master, text='France 24', font='Arial 15', fg='WHITE', bg='black', height=200, relief=GROOVE) frm1.place(x=320, y=100) feed = feedparser.parse("http://www.france24.com/fr/france/rss").entries def aff(inpho,pheed,n): inpho.config(text=pheed[n].title) if n+1<len(pheed): n +=1 else: pheed = feedparser.parse("http://www.france24.com/fr/france/rss").entries n = 0 info.after(1000,aff,inpho,pheed,n) info = Label(frm1, font='Arial 16', fg='WHITE', bg='black') info.pack() aff(info,feed,0) master.mainloop()
-
-
Trop cool, MERCI exactement je que je voulais.
Je vais étudier le code pour bien le comprendre.
MERCI