def __init__(self,parent_window): parent_window.destroy() # 销毁子界面 self.window = tk.Tk() self.window.title('学生清单') self.window.geometry('1200x600+70+50') db = pymysql.connect(host="localhost", user="root", passwd="123456", db="room_db") cursor = db.cursor() # 使用cursor()方法获取操作游标 sql = "SELECT * FROM 学生住宿信息表" try: cursor.execute(sql) # 执行sql语句 results = cursor.fetchall() for row in results: self.id = '学号: ' + row[0] self.name = '姓名: ' + row[1] self.gender = '性别: ' + row[2] self.age = '年龄: ' + row[3] self.num = '电话:' + row[4] self.build = '公寓号:' + row[5] self.room = '宿舍号:' + row[6] db.commit() Label(self.window, text=self.id + "\t" + self.name + "\t" + self.gender + "\t" +self.age + "\t" +self.num+ "\t"+self.build + "\t" + self.room, font=('楷体', 18)).pack(pady=5) except: db.rollback() # 发生错误时回滚 messagebox.showinfo('警告!', '数据库连接失败!') db.close() # 关闭数据库连接 self.right_top_button4 = ttk.Button(text='返回', width=20, command=self.back).pack() self.window.protocol("WM_DELETE_WINDOW", self.back) def back(self): cangkucha(self.window)为什么运行不了
时间: 2024-02-14 10:27:23 浏览: 102
Windows_message_test_program.rar_VC控制_window message
根据您提供的代码,问题可能出在`cangkucha(self.window)`这一行上。根据代码来看,`cangkucha()`是一个函数,而不是一个类或对象的方法。所以,您需要将其改为函数的调用,而不是将其作为类的实例化。可以尝试使用以下代码进行调用:
```python
cangkucha(self.window)
```
另外,请确保在运行代码之前已经导入了必要的模块,如`tkinter`、`pymysql`、`messagebox`等。如果没有导入相关模块,也会导致代码运行失败。
阅读全文