Python Forum
Refresh test in urwid.Text
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Refresh test in urwid.Text
#1
I am trying output some test to the screen, but I have to update the text when some external data changes.

So I made this test program, and even though it works, I think I am doing something very wrong, since it seems like I am creating loops within loops.

Can someone tell me what i am doing wrong?

#!/usr/bin/python
import urwid

def unhandled_input(key):
    if key == 'q':
        raise urwid.ExitMainLoop()

def refresh(_loop,_data):
	outputTxt       = ['COMP3      ', (red_bg, 'DOWN   '), "Bla\n"]
	outputTxt      += ['COMP4      ', (green_bg, 'UP     '), "Bla bla\n"]

	txt             = urwid.Text(outputTxt)
	fill            = urwid.Filler(txt, 'top')
	loop            = urwid.MainLoop(fill, unhandled_input=unhandled_input)
	loop.set_alarm_in(1,refresh)
	loop.run()

red_bg = urwid.AttrSpec('default', 'dark red')
green_bg = urwid.AttrSpec('default', 'dark green')

outputTxt       = ['COMP1      ', (red_bg, 'DOWN   '), "Bla\n"]
outputTxt      += ['COMP2      ', (green_bg, 'UP     '), "Bla bla\n"]

txt             = urwid.Text(outputTxt)
fill            = urwid.Filler(txt, 'top')
loop            = urwid.MainLoop(fill, unhandled_input=unhandled_input)
loop.set_alarm_in(1,refresh)
loop.run()
Reply
#2
Found the solution, had to change the refresh method to this.

def refresh(_loop,_data):
    outputTxt       = ['COMP3      ', (red_bg, 'DOWN   '), "Bla\n"]
    outputTxt      += ['COMP4      ', (green_bg, 'UP     '), "Bla bla\n"]

    txt.set_text(outputTxt)
    loop.set_alarm_in(1,refresh)
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  tkinter - update/refresh treeview snakes 5 20,523 Dec-02-2023, 07:05 PM
Last Post: aynous19
  [PyQt] Refresh x-labels in matplotlib animation widget JohnT 5 3,672 Apr-23-2021, 07:40 PM
Last Post: JohnT
  Refresh image in label after every 1s using simple function jenkins43 1 5,441 Jul-28-2019, 02:49 PM
Last Post: Larz60+
  Unable to update or refresh label text in tkinter jenkins43 3 6,501 Jul-24-2019, 02:09 PM
Last Post: Friend
  Tkinter refresh eduardoforo 4 12,503 Nov-14-2018, 09:35 PM
Last Post: woooee
  [Tkinter] Label doesn't refresh jollydragon 7 6,889 Jul-13-2018, 05:55 AM
Last Post: jollydragon
  [PyQt] enviremont refresh duende 2 3,387 May-13-2018, 09:49 AM
Last Post: duende
  pyqt main window refresh poblems duende 0 5,333 Apr-13-2018, 05:05 PM
Last Post: duende
  [Tkinter] problem with refresh UI in tkinter app Philbot 5 10,700 Feb-06-2018, 01:10 PM
Last Post: Philbot
  How Can I Do Refresh Window? satrancali 0 7,034 Feb-03-2018, 07:50 AM
Last Post: satrancali

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020