首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我不能填充我的tksheet表行?

为什么我不能填充我的tksheet表行?
EN

Stack Overflow用户
提问于 2020-08-28 03:46:31
回答 2查看 1.6K关注 0票数 1
  1. 我正在设法在python建立学生出勤率记录。我大部分都想通了。我被困在一个区,这是服务员区。我试图使用表格格式(tksheets)来记录学生的姓名和出勤情况。我遇到的问题是如何处理tksheets。我似乎无法从DB(SQLite3)中获取信息来填充这些列。我也试过了tktable,还有大笨猫。但我再次遇到了同样的问题。

我考虑过使用Treeview Widget填充列中的学生名称,然后使用输入框添加出勤。问题是,我必须创建每个输入框,并将其单独放置。我不喜欢这个计划。下面是我正在使用的当前代码。

如果有人能告诉我如何从DB获取数据并填充我正在使用的电子表格,那就太棒了。谢谢。

代码语言:javascript
运行
复制
    def rows(self):
        self.grid_columnconfigure(1, weight=1)
        self.grid_rowconfigure(1,weight=1)
        self.sheet = Sheet(self.aug_tab,
                       data=[[f'Row{r} Column{c}' for c in range(36)]for r in range(24)],
                           height=300,
                           width=900)
        self.sheet.enable_bindings(("single",
                                         "drag_select",
                                         "column_drag_and_drop",
                                         "row_drag_and_drop",
                                         "column_select",
                                         "row_select",
                                         "column_width_resize",
                                         "double_click_column_resize",
                                         "row_width_resize",
                                         "column_height_resize",
                                         "arrowkeys",
                                         "row_height_resize",
                                         "double_click_row_resize",
                                         "right_click_popup_menu",
                                         "rc_insert_column",
                                         "rc_delete_column",
                                         "rc_insert_row",
                                         "rc_delete_row",
                                         "copy",
                                         "cut",
                                         "paste",
                                         "delete",
                                         "undo",
                                         "edit_cell"))
           

        self.headers_list = ("Student ID","Ch. First Name","Ch. Last Name","Eng. Name")
        self.headers = [f'{c}'for c in self.headers_list]
        self.sheet.headers(self.headers)

        self.sheet.pack()
        print(self.sheet.get_column_data(0,0))

    #############DEFINE FUNCTIONS###############################

    rows(self)

在这里输入图像描述

EN

Stack Overflow用户

发布于 2020-09-03 18:06:09

“好吧,你应该在你的代码和按钮中加入一个函数,而你可以一个一个地插入你的学生名字,或者把你的学生名字的大部分拷贝到单子上,这是我的代码”

代码语言:javascript
运行
复制
from tksheet import Sheet
import tkinter as tk


class demo(tk.Tk):
    def __init__(self):
        tk.Tk.__init__(self)
        self.grid_columnconfigure(0, weight = 1)
        self.grid_rowconfigure(0, weight = 1)
        self.sheet_demo = Sheet(self,
                                height = 500,
                                width = 700) 
        self.sheet_demo.enable_bindings(("single",
                                         "drag_select",
                                         "column_drag_and_drop",
                                         "row_drag_and_drop",
                                         "column_select",
                                         "row_select",
                                         "column_width_resize",
                                         "double_click_column_resize",
                                         "row_width_resize",
                                         "column_height_resize",
                                         "arrowkeys",
                                         "row_height_resize",
                                         "double_click_row_resize",
                                         "right_click_popup_menu",
                                         "rc_insert_column",
                                         "rc_delete_column",
                                         "rc_insert_row",
                                         "rc_delete_row",
                                         "copy",
                                         "cut",
                                         "paste",
                                         "delete",
                                         "undo",
                                         "edit_cell"))
    
        self.sheet_demo.grid(row = 0, column = 0, sticky = "nswe")
    
 
        self.data = [[f"" for c in range(1)] for r in range(100)]
        self.sheet_demo.data_reference(self.data)
    

        def click_this():
            for i in (self.sheet_demo.get_column_data(0)): 
                if i == '':
                break
                else:
                    print(i.strip())
                    self.data = [[f"" for c in range(1)]for r in range(100)]
                    self.sheet_demo.data_reference(self.data)
                
        button=tk.Button(text=" click this",command= click_this)
        button.grid(row= 1, column=0, sticky= "n")


    
app = demo()
app.mainloop()
票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63627160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档