Python Tkinter 窗口创建错误解决:tk.Button() 报错 'function' object has no attribute 'tk'
在定义 zonghechaxunwindow() 函数时,没有创建一个 Tkinter 窗口对象,因此在创建 select_button1 按钮时,将该函数作为参数传递给了 tk.Button() 函数,导致了报错。可以使用 tk.Toplevel() 创建一个新的窗口对象,然后将按钮添加到该窗口中,如下所示:
def zonghechaxunwindow():
    # 创建一个新的窗口对象
    window = tk.Toplevel()
    
    def select1():
        tree=ttk.treeview(window)
        tree['columns']=('id','name','gender','phone','address','remark')
        tree.column('id',width=90)
        tree.column('name',width=90)
        tree.column('gender',width=90)
        tree.column('phone',width=90)
        tree.column('address',width=90)
        tree.column('remark',width=90)
        tree.heading('id',text='身份证号')
        tree.heading('name',text='姓名')
        tree.heading('gender',text='性别')
        tree.heading('phone',text='联系电话')
        tree.heading('address',text='家庭住址')
        tree.heading('remark',text='职位')
        
        tree.grid(column=0,row=1,sticky='NSEW')
        
        conn=py.connect(host='localhost',user='root',password='houyushan1022',db='police')
        cursor=conn.cursor()
        cursor.execute("select * from person_info where 家庭住址='北京市朝阳区'" )
        list_result=cursor.fetchall()
        x=tree.get_children()
        for item in x:
            tree.delete(item)
        for i in range(len(list_result)):
            
            
            tree.insert("",i,text=str(i),values=(list_result[i][0],list_result[i][1],list_result[i][2],list_result[i][3],list_result[i][4],list_result[i][5]))
    
        conn.commit()
        conn.close()
        
    select_button1=tk.Button(window,bg='pink',text='查询家在北京朝阳区的民警',font=("微软雅黑 -20"),width=40,hight=1,command=select1)
    select_button1.place(x=10,y=370)
原文地址: https://www.cveoy.top/t/topic/ospf 著作权归作者所有。请勿转载和采集!