以下是一个简单的示例代码,实现了两个按钮,一个用于导入 CSV 文件,一个用于查看该文件内容:

import tkinter as tk
import csv

class CSVViewer(tk.Frame):
    def __init__(self, master=None):
        super().__init__(master)
        self.master = master
        self.pack()
        self.create_widgets()

    def create_widgets(self):
        self.import_button = tk.Button(self, text='导入 CSV 文件', command=self.import_csv)
        self.import_button.pack(side='left')

        self.view_button = tk.Button(self, text='查看 CSV 文件', command=self.view_csv)
        self.view_button.pack(side='left')

    def import_csv(self):
        file_path = tk.filedialog.askopenfilename(filetypes=[('CSV Files', '*.csv')])
        if file_path:
            self.csv_data = []
            with open(file_path, 'r', newline='') as csvfile:
                reader = csv.reader(csvfile)
                for row in reader:
                    self.csv_data.append(row)

    def view_csv(self):
        if hasattr(self, 'csv_data'):
            text_area = tk.Text(self)
            text_area.pack()
            for row in self.csv_data:
                text_area.insert(tk.END, ','.join(row) + '\n')

root = tk.Tk()
app = CSVViewer(master=root)
app.mainloop()

这个示例代码中,我们创建了一个名为 CSVViewer 的类,继承自 tk.Frame,用于创建 GUI 界面。在 create_widgets 方法中,我们创建了两个按钮,一个用于导入 CSV 文件,一个用于查看该文件内容。在 import_csv 方法中,我们使用 tk.filedialog 打开文件选择对话框,让用户选择要导入的 CSV 文件,并读取 CSV 文件的内容。在 view_csv 方法中,我们在当前窗口中创建一个 Text 控件,将 CSV 文件的内容以 CSV 格式显示出来。

在主程序中,我们创建了一个 Tk 对象和一个 CSVViewer 对象,并调用 mainloop 方法开始运行 GUI 程序。

注意:

  • 代码中已经修改了双引号为单引号。
  • view_csv 方法不再创建新的窗口,而是直接在当前窗口中显示 CSV 数据。
  • 为了更方便地查看数据,可以使用 tk.Scrollbar 来添加滚动条。
Python Tkinter CSV 文件查看器 - 无需新窗口显示数据

原文地址: https://www.cveoy.top/t/topic/n2tw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录