非常抱歉给您带来了困扰。经过仔细检查,我发现了可能导致问题的原因所在。在你的代码中,初始化DF时, ...
用python显示习惯展示你这段代码 laiyuanjie 发表于 2024-04-11 13:46
用python显示习惯展示你这段代码
请参考下面的示例代码,使用Python Tkinter库展示了你提供的代码:
import tkinter as tk
from datetime import timedelta, date
from path_all import get_refuel_sheet
from tkinter import filedialog
from tkinter import ttk
class FirstFrame(tk.Frame):
def __init__(self, root):
super().__init__(root)
self.default_open_path = "d:/"
self.l_frame = tk.Frame(self)
self.l_frame.grid(row=0, column=0, pady=30)
self.r_frame = tk.Frame(self)
self.r_frame.grid(row=0, column=1, pady=30)
self.create_page()
def get_human_sheet_path(self):
self.human_sheet_path = filedialog.askopenfilename(initialdir=self.default_open_path)
def get_object_sheet_path(self):
self.object_sheet_path = filedialog.askopenfilename(initialdir=self.default_open_path)
def road_table_label(self):
self.service_labelframe = tk.LabelFrame(self.l_frame, text="载入表格的区域")
self.human_sheet_botton = tk.Button(self.service_labelframe, text="人事部加油表格", command=self.get_human_sheet_path)
self.human_sheet_botton.grid(row=0, column=0, pady=10, padx=8)
self.split_line_label = tk.Label(self.service_labelframe, text="-" * 10, font=20)
self.split_line_label.grid(row=1, column=0, pady=5, padx=5)
self.object_sheet_botton = tk.Button(self.service_labelframe, text="核对方加油表格", command=self.get_object_sheet_path)
self.object_sheet_botton.grid(row=2, column=0, pady=10, padx=8)
self.split_line_label_2 = tk.Label(self.service_labelframe, font=20)
self.split_line_label_2.grid(row=3, column=0, pady=5, padx=5)
self.split_line_label_3 = tk.Label(self.service_labelframe, text="-" * 10, font=20)
self.split_line_label_3.grid(row=5, column=0, pady=5, padx=5)
self.get_df_botton = tk.Button(self.service_labelframe, text="点击载入表格", command=self.get_df)
self.get_df_botton.grid(row=6, column=0, pady=5, padx=5)
self.split_line_label_4 = tk.Label(self.service_labelframe, font=20)
self.split_line_label_4.grid(row=7, column=0, pady=5, padx=5)
self.service_labelframe.pack(padx=20, pady=10, anchor=tk.N)
def get_df(self):
self.df = get_refuel_sheet()
self.df.set_path(self.human_sheet_path, self.object_sheet_path)
self.diff_liters_df = self.df.show_liters_diff()
self.diff_car_df = self.df.show_car_diff()
self.show_liters_treeview()
self.show_car_treeview()
def show_table_label(self):
self.diff_liters()
tk.Label(self.r_frame).pack(pady=5)
self.diff_data()
tk.Label(self.r_frame).pack(pady=5)
self.diff_car()
tk.Label(self.r_frame).pack(pady=5)
self.human_have_not()
tk.Label(self.r_frame).pack(pady=5)
self.other_have_not()
def diff_liters(self):
self.show_liters_table_frame = tk.LabelFrame(self.r_frame, text="加油升数不一致:", labelanchor=tk.N, font=15, fg="blue")
self.liters_treeview = ttk.Treeview(self.show_liters_table_frame, height=5, show="headings")
self.liters_treeview.pack()
self.liters_columns = self.liters_treeview
self.show_liters_table_frame.pack()
for column in self.liters_columns:
self.liters_treeview.heading(column, text=column)
self.liters_treeview.column(column="日期", width=75, anchor="e")
self.liters_treeview.column(column="车牌", width=100, anchor="e")
self.liters_treeview.column(column="人事部升数", width=80, anchor="e")
self.liters_treeview.column(column=f"核对方升数", width=80, anchor="e")
def show_liters_treeview(self):
liters_df = self.diff_liters_df
self.liters_treeview.delete(*self.liters_treeview.get_children())
for index, row in liters_df.iterrows():
self.liters_treeview.insert("", "end", values=row.tolist())
def diff_car(self):
self.show_table_frame = tk.LabelFrame(self.r_frame, text="加油车子不一致:", labelanchor=tk.N, font=15, fg="blue")
self.car_treeview = ttk.Treeview(self.show_table_frame, height=5, show="headings")
self.car_treeview.pack()
self.columns = self.car_treeview
self.show_table_frame.pack()
for column in self.columns:
self.car_treeview.heading(column, text=column)
self.car_treeview.column(column="日期", width=80, anchor="e")
self.car_treeview.column(column="加油升数", width=80, anchor="e")
self.car_treeview.column(column="人事部车牌", width=80, anchor="e")
self.car_treeview.column(column="核对方车牌", width=80, anchor="e")
def show_car_treeview(self):
car_df = self.diff_car_df
print("jiushiwo")
self.car_treeview.delete(*self.car_treeview.get_children())
for index, row in car_df.iterrows():
self.car_treeview.insert("", "end", values=row.tolist())
def create_page(self):
self.road_table_label()
self.show_table_label()
if __name__ == '__main__':
root = tk.Tk()
FirstFrame(root).pack()
root.mainloop()
希望这个示例代码能帮助到你!如果还有其他问题,请随时向我提问。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
1
[2]