dragov 发表于 2022-10-29 18:50:26

Tkinter 如何打开 Excel



程 序 运 行 后 显 示 的 “人才组” 下 拉 菜 单 中,欲 要 点 击 “文件” (文件在 e:/Python/girl.xlsx), 怎 么 写 代 码 呀 ?

from tkinter import *
import pandas as pd
root = Tk()
root.title("个人娱乐计算机管理系统")
root.config(background="beige")
root.iconbitmap("e:/Python/11.ico")
root.geometry("600x200+850+200")

def callback():
    print("计算机程序完善中......")

def wj():
    file_1=pd.read_excel("e:/Python/girl.xlsx")

menubar=Menu(root)    # 创建一个顶级菜单

# 创建“人才组”下拉菜单,而后添加到顶级菜单中
talentmenu=Menu(menubar,tearoff=False)
talentmenu.add_command(label="成员",command=callback)
talentmenu.add_command(label="文件",command=wj)
talentmenu.add_command(label="考勤",command=callback)
talentmenu.add_command(label="备用",command=callback)
talentmenu.add_separator()
talentmenu.add_command(label="退出",command=root.quit)
menubar.add_cascade(label="人才组",menu=talentmenu)

root.config(menu=menubar)    # 显示菜单
mainloop()

Brick_Porter 发表于 2022-10-29 19:31:23

tkinter有一个模块叫做filedialog,它的里面提供了一个名为askopenfilename的函数可以创建一个弹窗让用户选择要打开的文件
from tkinter import filedialog as fd

name = fd.askopenfilename()
print(name)

dragov 发表于 2022-10-29 19:37:19

Brick_Porter 发表于 2022-10-29 19:31
tkinter有一个模块叫做filedialog,它的里面提供了一个名为askopenfilename的函数可以创建一个弹窗让用户选 ...


按照您的提示,我修改了代码,不行的 ......

from tkinter import *
import pandas as pd
from tkinter import filedialog
root = Tk()
root.title("个人娱乐计算机管理系统")
root.config(background="beige")
root.iconbitmap("e:/Python/11.ico")
root.geometry("600x200+850+200")

def callback():
    print("计算机程序完善中......")

def wj():
    name = filedialog.askopenfilename()
    print(name)
    # file_1=pd.read_excel("e:/Python/girl.xlsx")

menubar=Menu(root)    # 创建一个顶级菜单

# 创建“人才组”下拉菜单,而后添加到顶级菜单中
talentmenu=Menu(menubar,tearoff=False)
talentmenu.add_command(label="成员",command=callback)
talentmenu.add_command(label="文件",command=wj)
talentmenu.add_command(label="考勤",command=callback)
talentmenu.add_command(label="备用",command=callback)
talentmenu.add_separator()
talentmenu.add_command(label="退出",command=root.quit)
menubar.add_cascade(label="人才组",menu=talentmenu)

root.config(menu=menubar)    # 显示菜单
mainloop()

lassiter 发表于 2022-10-29 21:01:34

不知道你想实现什么效果,不过从目前你的代码看,你只是读取了girl.xlsx的地址,并没有指定读取内容存放在什么位置,显示在哪里,不如加上一个文本框,显示内容为读取的名字

阿奇_o 发表于 2022-10-29 21:10:59

要说清楚 你的准确需求:
   1. 你是要打开这个Excel文件,然后将内容展示到tk的界面里 ?
   2. 还是 只是通过这个回调函数wj,单独打开xlsx (用默认的Excel软件打开)??
   3. 应该不是 只是打印出来吧?

which one?

dragov 发表于 2022-10-29 21:15:31

阿奇_o 发表于 2022-10-29 21:10
要说清楚 你的准确需求:
   1. 你是要打开这个Excel文件,然后将内容展示到tk的界面里 ?
   2. 还是...

我是想打开这个Excel文件,然后将内容展示到tk的界面里 。

dragov 发表于 2022-10-29 21:17:11

lassiter 发表于 2022-10-29 21:01
不知道你想实现什么效果,不过从目前你的代码看,你只是读取了girl.xlsx的地址,并没有指定读取内容存放在 ...

我是要打开这个Excel文件,然后将内容展示到tk的界面里 ,不知道如何写代码 ?

阿奇_o 发表于 2022-10-29 22:30:34

dragov 发表于 2022-10-29 21:17
我是要打开这个Excel文件,然后将内容展示到tk的界面里 ,不知道如何写代码 ?

一种办法是:可以用pandas读取xlsx后,然后将数据放到TK的 Treeview 里。至于若要修改单元格,那自己去折腾吧。

dragov 发表于 2022-10-30 08:25:26

阿奇_o 发表于 2022-10-29 22:30
一种办法是:可以用pandas读取xlsx后,然后将数据放到TK的 Treeview 里。至于若要修改单元格,那自己去 ...

{:7_130:}   如何将 Excel 的数据放到 Treeview 中呢 ?







wp231957 发表于 2022-10-30 10:31:23

dragov 发表于 2022-10-30 08:25
如何将 Excel 的数据放到 Treeview 中呢 ?

百度一下treeview的用法,不是狠难的说
我电脑上有现成代码,手机发贴,没办法

wp231957 发表于 2022-10-30 14:03:45

dragov 发表于 2022-10-30 08:25
如何将 Excel 的数据放到 Treeview 中呢 ?

核心代码
def load():
    tree.delete(*tree.get_children())
    wb=load_workbook(r"2022.xlsx",data_only=True)
    ws=wb.active
    cres=ws["a1:d10"]
    for row in ws.iter_rows(min_row=1,max_row=10,max_col=4):
      i=1
      res=
      tree.insert("",i,values=res)
      i+=1


btnload=tkinter.Button(root,text="导入数据",command=load)
btnload.place(x=160,y=530,width=100,height=40)

wp231957 发表于 2022-10-30 14:12:46

dragov 发表于 2022-10-30 08:25
如何将 Excel 的数据放到 Treeview 中呢 ?

再来一版 打开文件对话框的
def load():
    tree.delete(*tree.get_children())
    name = filedialog.askopenfilename()
    wb=load_workbook(name,data_only=True)
    ws=wb.active
    cres=ws["a1:d10"]
    for row in ws.iter_rows(min_row=1,max_row=10,max_col=4):
      i=1
      res=
      tree.insert("",i,values=res)
      i+=1

dragov 发表于 2022-10-30 15:17:10

wp231957 发表于 2022-10-30 14:12
再来一版 打开文件对话框的

{:7_118:} 深表感谢{:7_116:}


页: [1]
查看完整版本: Tkinter 如何打开 Excel