如何在tkinter label.config(text =“ printed value”)中使用函数打印值

时间:2018-06-29 14:04:26

标签: python tkinter

我需要帮助来使用要在标签中使用的函数输出。 我已经尝试过lbl.config(text=row.empid, row.joineddate)lbl.config(text=print(row.empid, row.joineddate)),但都没有用。

函数是:

def sqlstatement():
    con = pyodbc.connect("Driver={SQL Server};server=localhost;database=employee;uid=admin;pwd=pwd")
    cur = con.cursor()
    sql= '''SELECT empid,joineddate from employee where empid= ?'''
    param_values=['11001']
    cur.execute(sql)
    rows = cur.fetchall()
    for row in rows:
            print(row.empid, row.joineddate)

1 个答案:

答案 0 :(得分:2)

假设您希望标签的文本是row.empidrow.joineddate的串联,那么您当前的方法都无效。第一个不理解您要尝试将Empid和Joindate都传递给text参数。它认为Joindate是一个单独的参数。第二个简单地将empid和joindate打印到stdout并将返回值print发送到标签。 print始终返回None,因此也不会正确更新标签。

您应该编写一个字符串,并将其传递给text参数。试试:

bl.config(text="{} {}".format(row.empid, row.joineddate))

或者,如果您的Python版本支持f字符串,

bl.config(text=f"{row.empid} {row.joineddate}")