|
发表于 2024-5-21 15:21:47
|
显示全部楼层
如果A和B这两个类都是继承自Frame,那么你可以在A类中创建一个B类的实例,并将A类的DF作为B类的属性进行传递。
示例代码如下:
- import tkinter as tk
- import pandas as pd
- class A(tk.Frame):
- def __init__(self, parent):
- super().__init__(parent)
-
- # 创建DF
- self.df = pd.DataFrame({'col1': [1, 2, 3], 'col2': [4, 5, 6]})
-
- # 创建按钮,点击时调用show_df方法
- self.button = tk.Button(self, text='Show DF', command=self.show_df)
- self.button.pack()
-
- def show_df(self):
- # 创建B类的实例,并将A类的DF作为参数传递
- b = B(self.df)
- b.pack()
-
- class B(tk.Frame):
- def __init__(self, df):
- super().__init__()
-
- # 接收A类的DF
- self.df = df
-
- # 在B类中显示DF
- self.label = tk.Label(self, text=self.df.to_string())
- self.label.pack()
- root = tk.Tk()
- a = A(root)
- a.pack()
- root.mainloop()
复制代码
上面的代码中,A类和B类都继承自tkinter的Frame类。在A类中创建了一个DF,并通过按钮点击事件调用show_df方法,在其中创建了B类的实例,并将A类的DF作为参数传递给B类。在B类中接收到DF后,通过Label控件展示DF的内容。
希望对你有帮助!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|