当前位置: 首页 > news >正文

使用tkinter拖入excel文件并显示

使用tkinter拖入excel文件并显示

  • 效果
  • 代码

效果

请添加图片描述

代码

import tkinter as tk
from tkinter import ttk
from tkinterdnd2 import TkinterDnD, DND_FILES
import pandas as pdclass ExcelViewerApp(TkinterDnD.Tk):def __init__(self):super().__init__()self.title("Excel Viewer")self.geometry("800x600")self.drop_label = ttk.Label(self, text="Drag and drop an Excel file here")self.drop_label.pack(pady=20)self.tree = ttk.Treeview(self)self.tree.pack(expand=True, fill='both')self.drop_target_register(DND_FILES)self.dnd_bind('<<Drop>>', self.drop)def drop(self, event):file_path = event.data.strip('{}')if file_path.endswith(('.xls', '.xlsx')):self.show_excel(file_path)else:self.drop_label.config(text="Please drop a valid Excel file")def show_excel(self, file_path):df = pd.read_excel(file_path)self.tree.delete(*self.tree.get_children())self.tree["columns"] = list(df.columns)self.tree["show"] = "headings"for column in self.tree["columns"]:self.tree.heading(column, text=column)for index, row in df.iterrows():self.tree.insert("", "end", values=list(row))self.drop_label.config(text="Drag and drop an Excel file here")if __name__ == "__main__":app = ExcelViewerApp()app.mainloop()

相关文章:

  • 大数据面试题之Kafka(4)
  • Rocky Linux 9 快速安装docker 教程
  • (原创)可支持最大高度的NestedScrollView
  • STM32——使用TIM输出比较产生PWM波形控制舵机转角
  • Ubuntu20.04 64位 安装docker(有问题可评论沟通交流)
  • 【PHP】实现类的无缝动态扩展,设计模式,php工厂模式应用场景,以下代码是工厂模式在框架设计中的真实使用案例代码
  • No port is available from the preconfigured port range
  • 华为DCN之:SDN和NFV
  • day09了 加油
  • 基于weixin小程序乡村旅游系统的设计
  • Windows系统安装NVM,实现Node.js多版本管理
  • MATLAB将两个折线图画在一个图里
  • golang项目中gorm框架的配置和具体使用
  • C# 计算椭圆上任意一点坐标
  • 408第二轮复习记录 计算机组成原理(第一章 计算机系统概述)
  • 自己简单写的 事件订阅机制
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • 2017-09-12 前端日报
  • Docker入门(二) - Dockerfile
  • es6
  • Terraform入门 - 1. 安装Terraform
  • 浏览器缓存机制分析
  • 那些年我们用过的显示性能指标
  • 山寨一个 Promise
  • 使用SAX解析XML
  • 微服务框架lagom
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 移动端唤起键盘时取消position:fixed定位
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • 交换综合实验一
  • 容器镜像
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • # 职场生活之道:善于团结
  • ###C语言程序设计-----C语言学习(6)#
  • #etcd#安装时出错
  • (1)(1.13) SiK无线电高级配置(五)
  • (27)4.8 习题课
  • (C语言)逆序输出字符串
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (理论篇)httpmoudle和httphandler一览
  • (原)本想说脏话,奈何已放下
  • (转)http协议
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (转)Sql Server 保留几位小数的两种做法
  • (自适应手机端)响应式服装服饰外贸企业网站模板
  • ./configure,make,make install的作用(转)
  • .gitignore
  • .MyFile@waifu.club.wis.mkp勒索病毒数据怎么处理|数据解密恢复
  • .NET与java的MVC模式(2):struts2核心工作流程与原理
  • @SuppressLint(NewApi)和@TargetApi()的区别
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)
  • [《百万宝贝》观后]To be or not to be?
  • [BZOJ3211]:花神游历各国(小清新线段树)
  • [C#]DataTable常用操作总结【转】
  • [CSS]盒子模型