Python - Mantener ttk.Label actualizado en tiempo real?

 
Vista:
Imágen de perfil de Tomas

Mantener ttk.Label actualizado en tiempo real?

Publicado por Tomas (7 intervenciones) el 19/12/2021 18:42:07
Buenas,

Me gustaría saber si es posible mantener actualizado en tiempo real un ttk.Label con el texto que muestre.

Ya que lo tengo mostrando un mensaje de una base de datos externa (PyMysql) y me gustaría por ejemplo yo mismo desde la base de datos cambiar el mensaje y que se cambie en la ventana (label) sin tener que cerrar y abrir la aplicación (ventana) nuevamente.

O hace falta alguna librería en especial para mantener todo los datos que muestra en tiempo real.

Cualquier información adicional lo agradeceria.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Mantener ttk.Label actualizado en tiempo real?

Publicado por tincopasan (1082 intervenciones) el 19/12/2021 21:13:57
creas una variable de tipo stringvar y la vinculas al label, cada vez que cambies la cadena seteas la nueva y listo, buscá stringvar y label, o poné un código mínimo funcional y con la venmtana, el label y un botón para ver un posible ejemplo..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Tomas

Mantener ttk.Label actualizado en tiempo real?

Publicado por Tomas (7 intervenciones) el 19/12/2021 23:49:36
Buenas, gracias por su respuesta.
Esto es lo que tengo, lo que hago es mostrar un dato de la base de dato en la variable "results" y esa es la que quiero mantener actualizada en tiempo real, si por ejemplo tengo la aplicación abierta y modifico el dato en la base de datos quiero que se haga efectivo el cambio sin tener que reiniciar la aplicación.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
from tkinter import *
from tkinter import ttk
import pymysql
 
# Abre conexion con la base de datos
db = pymysql.connect(host='',
                             user='sql11459959',
                             password='',
                             database='sql11459959',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor)
##################################################
cursor = db.cursor()
 
# Seleccionador base de datos
sql = "SELECT name FROM test WHERE id = 2"
 
# Ejecutar comando
cursor.execute(sql)
 
# Mostrar
results = cursor.fetchall()
print (results)
 
# Desconexion
db.close()
 
 
####### VENTANA Tkinter #######
 
 
root = Tk()
root.title("Mostrar datos")
 
mainframe = ttk.Frame(root, padding="3 3 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)
 
 
ttk.Label(mainframe, text=results).grid(column=3, row=2, sticky=W)
 
 
 
root.mainloop()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar