[tkinter] Ajouter un label chaque minute

Résolu
tatal21820 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention   -  
tatal21820 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention   -

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

A voir également:

6 réponses

Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 

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()
0
tatal21820 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 

Ç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.

0
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 

J'ai rajouté un code ..

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 

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()
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tatal21820 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 

Merci, je vais creuser la question, pour l'instant ça affiche 1,2,3

Un grand merci

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 

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()
0
tatal21820 Messages postés 35 Date d'inscription   Statut Membre Dernière intervention  
 

Trop cool, MERCI exactement je que je voulais.

Je vais étudier le code pour bien le comprendre.

MERCI

0