我能够连接 mysql 和 python
我创建了 2 个标签,我想将值从数据库 (MySQL) 导入到标签 (tkinter),而不是“text1”和“text2”。
我必须使用什么功能? 或者 我该如何解决这个问题?
from tkinter import *
from PIL import Image, ImageTk
import pymysql
conn = pymysql.connect(host = "localhost",
user = "root",
passwd = "asdf",
db = "testdb", charset = 'utf8')
curs = conn.cursor(pymysql.cursors.DictCursor)
sql = "select * from test where id=%s and text1=%s and text2=%s"
curs.execute(sql,('A0002','asdfasdfasdf', 'asdfasdfvvwervfvasff'))
class App(Frame):
def __init__(self, master):
Frame.__init__(self, master)
self.grid(row=0)
self.columnconfigure(0,weight=1)
self.rowconfigure(0,weight=1)
self.original = Image.open('Chrysanthemum.jpg')
resized = self.original.resize((400, 300),Image.ANTIALIAS)
self.image = ImageTk.PhotoImage(resized)
self.display = Label(self, image = self.image)
self.display.grid(column=0,row=0)
root = Tk()
root.title("image test")
root.geometry("1000x800+100+100")
root.resizable(0,0)
root.configure(background = 'white')
app = App(root)
rows = curs.fetchall()
label1 = Label(root,text = "text1")
label1.config(wraplength =500)
label1.config(width=80,height=20)
label1.grid(column=1,row=0)
label2 = Label(root,text ="text2")
label2.config(wraplength=910)
label2.config(width=138,height=30)
label2.grid(columnspan=2,row=1)
app.mainloop()
最佳答案
要在 Tkinter 中设置标签的文本,您可以使用 StringVar
并相应地设置其值。请查看以下代码是否有帮助:
labelText1 = Stringvar()
label1 = Label(self, textvariable=labelText1)
只要数据库中有更新,就可以使用set
函数对变量进行赋值:
labelText1.set(labelTextValue)
关于python - Tkinter Mysql 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47503739/