精华内容
下载资源
问答
  •  通过功能函数,实现按表头排序、编辑单元格、新建单元格。  1.编辑单元格函数set_cell_value原理:  在原单元格上方新建一个文本框Text和按钮Button,用来编辑内容,按下按钮将单元格内容存入单元格,并...

    版本:Python3.7

    1.使用Treeview创建表格界面

    from tkinter import ttk
    from tkinter import *
    root = Tk()  # 初始框的声明
    columns = ("姓名", "IP地址")
    treeview = ttk.Treeview(root, height=18, show="headings", columns=columns)  # 表格
    
    treeview.column("姓名", width=100, anchor='center') # 表示列,不显示
    treeview.column("IP地址", width=300, anchor='center')
    
    treeview.heading("姓名", text="姓名") # 显示表头
    treeview.heading("IP地址", text="IP地址")
    
    treeview.pack(side=LEFT, fill=BOTH)
    
    name = ['电脑1','服务器','笔记本']
    ipcode = ['10.13.71.223','10.25.61.186','10.25.11.163']
    for i in range(min(len(name),len(ipcode))): # 写入数据
        treeview.insert('', i, values=(name[i], ipcode[i]))
    root.mainloop()  # 进入消息循环

    2.编写功能函数,并与鼠标事件绑定

           通过功能函数,实现按表头排序、编辑单元格、新建单元格。

           1.编辑单元格函数set_cell_value原理:

           在原单元格上方新建一个文本框Text和按钮Button,用来编辑内容,按下按钮将单元格内容存入单元格,并销毁文本框Text和按钮Button。

           2.新建单元格函数newrow原理:

           调用Treeview.insert方法,并在表格下方设置‘新建’按钮Button,用来关联函数,按钮位置随表格行数实时更新。

    def treeview_sort_column(tv, col, reverse):  # Treeview、列名、排列方式
        l = [(tv.set(k, col), k) for k in tv.get_children('')]
        l.sort(reverse=reverse)  # 排序方式
        # rearrange items in sorted positions
        for index, (val, k) in enumerate(l):  # 根据排序后索引移动
            tv.move(k, '', index)
        tv.heading(col, command=lambda: treeview_sort_column(tv, col, not reverse))  # 重写标题,使之成为再点倒序的标题
    
    def set_cell_value(event): # 双击进入编辑状态
        for item in treeview.selection():
            #item = I001
            item_text = treeview.item(item, "values")
            #print(item_text[0:2])  # 输出所选行的值
        column= treeview.identify_column(event.x)# 列
        row = treeview.identify_row(event.y)  # 行
        cn = int(str(column).replace('#',''))
        rn = int(str(row).replace('I',''))
        entryedit = Text(root,width=10+(cn-1)*16,height = 1)
        entryedit.place(x=16+(cn-1)*130, y=6+rn*20)
        def saveedit():
            treeview.set(item, column=column, value=entryedit.get(0.0, "end"))
            entryedit.destroy()
            okb.destroy()
        okb = ttk.Button(root, text='OK', width=4, command=saveedit)
        okb.place(x=90+(cn-1)*242,y=2+rn*20)
    
    def newrow():
        name.append('待命名')
        ipcode.append('IP')
        treeview.insert('', len(name)-1, values=(name[len(name)-1], ipcode[len(name)-1]))
        treeview.update()
        newb.place(x=120, y=(len(name)-1)*20+45)
        newb.update()
    
    treeview.bind('<Double-1>', set_cell_value) # 双击左键进入编辑
    newb = ttk.Button(root, text='新建联系人', width=20, command=newrow)
    newb.place(x=120,y=(len(name)-1)*20+45)
    

    3.完整代码

    from tkinter import ttk
    from tkinter import *
    root = Tk()  # 初始框的声明
    columns = ("姓名", "IP地址")
    treeview = ttk.Treeview(root, height=18, show="headings", columns=columns)  # 表格
    
    treeview.column("姓名", width=100, anchor='center') # 表示列,不显示
    treeview.column("IP地址", width=300, anchor='center')
    
    treeview.heading("姓名", text="姓名") # 显示表头
    treeview.heading("IP地址", text="IP地址")
    
    treeview.pack(side=LEFT, fill=BOTH)
    
    name = ['电脑1','服务器','笔记本']
    ipcode = ['10.13.71.223','10.25.61.186','10.25.11.163']
    for i in range(min(len(name),len(ipcode))): # 写入数据
        treeview.insert('', i, values=(name[i], ipcode[i]))
    
    
    def treeview_sort_column(tv, col, reverse):  # Treeview、列名、排列方式
        l = [(tv.set(k, col), k) for k in tv.get_children('')]
        l.sort(reverse=reverse)  # 排序方式
        # rearrange items in sorted positions
        for index, (val, k) in enumerate(l):  # 根据排序后索引移动
            tv.move(k, '', index)
        tv.heading(col, command=lambda: treeview_sort_column(tv, col, not reverse))  # 重写标题,使之成为再点倒序的标题
    
    def set_cell_value(event): # 双击进入编辑状态
        for item in treeview.selection():
            #item = I001
            item_text = treeview.item(item, "values")
            #print(item_text[0:2])  # 输出所选行的值
        column= treeview.identify_column(event.x)# 列
        row = treeview.identify_row(event.y)  # 行
        cn = int(str(column).replace('#',''))
        rn = int(str(row).replace('I',''))
        entryedit = Text(root,width=10+(cn-1)*16,height = 1)
        entryedit.place(x=16+(cn-1)*130, y=6+rn*20)
        def saveedit():
            treeview.set(item, column=column, value=entryedit.get(0.0, "end"))
            entryedit.destroy()
            okb.destroy()
        okb = ttk.Button(root, text='OK', width=4, command=saveedit)
        okb.place(x=90+(cn-1)*242,y=2+rn*20)
    
    def newrow():
        name.append('待命名')
        ipcode.append('IP')
        treeview.insert('', len(name)-1, values=(name[len(name)-1], ipcode[len(name)-1]))
        treeview.update()
        newb.place(x=120, y=(len(name)-1)*20+45)
        newb.update()
    
    treeview.bind('<Double-1>', set_cell_value) # 双击左键进入编辑
    newb = ttk.Button(root, text='新建联系人', width=20, command=newrow)
    newb.place(x=120,y=(len(name)-1)*20+45)
    
    
    for col in columns:  # 绑定函数,使表头可排序
        treeview.heading(col, text=col, command=lambda _col=col: treeview_sort_column(treeview, _col, False))
    '''
    1.遍历表格
    t = treeview.get_children()
    for i in t:
        print(treeview.item(i,'values'))
    2.绑定单击离开事件
    def treeviewClick(event):  # 单击
        for item in tree.selection():
            item_text = tree.item(item, "values")
            print(item_text[0:2])  # 输出所选行的第一列的值
    
    tree.bind('<ButtonRelease-1>', treeviewClick)  
    ------------------------------
    鼠标左键单击按下1/Button-1/ButtonPress-1 
    鼠标左键单击松开ButtonRelease-1 
    鼠标右键单击3 
    鼠标左键双击Double-1/Double-Button-1 
    鼠标右键双击Double-3 
    鼠标滚轮单击2 
    鼠标滚轮双击Double-2 
    鼠标移动B1-Motion 
    鼠标移动到区域Enter 
    鼠标离开区域Leave 
    获得键盘焦点FocusIn 
    失去键盘焦点FocusOut 
    键盘事件Key 
    回车键Return 
    控件尺寸变Configure
    ------------------------------
    '''
    
    root.mainloop()  # 进入消息循环
    
    
    
    

    4.GUI实现效果

            

                                           图1  最初界面                                                                         图2  按姓名排序

             

                                           图3  按IP地址排序                                                                  图4  新建联系人

            

                                                                                         图5  编辑单元格

    附录:

    参考链接python ttk Treeview的插入、清空、各种点击事件、获取条目值、标题单击排序

    展开全文
  • 内置单元格样式 选中单元格之后 ...新建单元格样式 设置颜色字体大小 保存后可食用 #include<iostream> using namespace std; int s1,s2,s3; bool flag = 1; int main() { freopen("1.txt","r"...

    内置单元格样式

    选中单元格之后
    开始->样式->单元格样式
    在这里插入图片描述

    新建自定义单元格样式

    开始->样式->新建单元格样式
    在这里插入图片描述

    设置颜色字体大小
    在这里插入图片描述

    保存后可食用
    在这里插入图片描述

    #include<iostream>
    using namespace std;
    int s1,s2,s3;
    bool flag = 1;
    int main()
    {
        freopen("1.txt","r",stdin);
        freopen("2.txt","w",stdout);
        int k;cin >> k;
        for(int i = 10000;i <= 30000;i++)
        {
            s1 = i / 100;
            s3 = i % 1000;
            s2 = (i/10)%1000;
            if(s1%k==0&&s2%k==0&&s3%k==0)
                {
                    cout << i <<endl;
                    flag = 0;
                }
        }
        if(flag)
            cout << "NO" ;//实在没想到是因为No打成了NO,太粗心了
    }
    
    展开全文
  • 效果图如下(常见问题)Excel单元格自定义格式的知识和技巧excel如何自定义套用表格格式怎么新增并设置EXCEL单元格自定义显示内容格式自定义excel表格样式 excel清除自定义样式 【解决方法,教程视频资料如下】资料...

    虽然Excel中包含了很多内置的表格样式,但有些并不太让人满意。此时可以自定义表格样式。
    效果图如下
    EXCEL如何新建自定义单元格以及样式怎么设置
    (常见问题)
    Excel单元格自定义格式的知识和技巧
    excel如何自定义套用表格格式怎么新增并设置
    EXCEL单元格自定义显示内容格式
    自定义excel表格样式 excel清除自定义样式

    【解决方法,教程视频资料如下】
    资料来源:http://edu.51cto.com/course/15224.html

    完整资料:http://edu.51cto.com/lecturer/13162026.html

    转载于:https://blog.51cto.com/13172026/2293781

    展开全文
  • 渲染选择题选项,根据正确答案,让A,B,C,D单元格着色 使用软件: WPS 步骤 1.点开管理规则 2.点击当前工作表 3.新建规则后,点最后一项 4.把正确答案为A的行A项的单元格底色都改为红色 5.然后点击应用于,修改到...

    背景

    渲染选择题选项,根据正确答案,让A,B,C,D单元格着色
    在这里插入图片描述

    使用软件: WPS

    步骤

    1.点开管理规则
    在这里插入图片描述
    2.点击当前工作表
    在这里插入图片描述
    3.新建规则后,点最后一项
    在这里插入图片描述
    4.把正确答案为A的行A项的单元格底色都改为红色
    在这里插入图片描述
    5.然后点击应用于,修改到为相应选项的列
    在这里插入图片描述
    6.依次新建后,点击确定
    在这里插入图片描述
    7.最终达成效果
    在这里插入图片描述

    END

    还有问题可打在评论区

    展开全文
  • visual c++操作word文件 新建 保存 新建表格 更改表格 格式合并单元格 填写页眉页脚.zip
  • 在EXCEL中,单个的单元格是无法拆分的,你最多在其中增加一条斜线,方法是右键点单元格,选“设置单元格格式”,在“边框”选项卡中有。 如果选取多个单元格,你可以合并,也可以拆分,方法是右键点单元格,选...
  • right-aligned 文本居中 right-aligned 文本居右 上面的方法写一些规则的表格很方便,如果表格中存在合并单元格,上面方法不支持,可以使用如下方法实现 二、HTML 示例如下,行列都有合并单元格 <table> <tr> 连接...
  • 由于数据别较多 打印的时候有溢出, 现在想把部分内容用两行显示 怎么做到自动换行
  • 有时在数据库的表字段中存储的是图片的URL,我们又需要在单元格内引入此字段URL对应的图片,这时我们可以...第一步:新建内建数据集如下, 第二步:设计报表如下, A1单元格数据类型为HTML类型。 第三步:在w...
  • 自适应表格单元格

    千次阅读 2016-10-08 09:30:49
    原文:Self-sizing Table View Cells 作者:Bradley Johnson ...如果你之前使用过自定义单元格,你肯定也在代码中花费大量的精力实现过自适应单元格。你可能习惯于手动计算单元格中的每一样东西的高
  • 现象: 做 Trade Matching时,在自动导入DB的trade confirmation时,所有的数字格式的数据,在导入后都变为了 日期格式。...原因: 单元格的样式中的“常规”的默认样式被无故修改为了“日期”,即当:  (1)...
  • table合并单元格

    千次阅读 2016-02-25 00:49:02
    table合并单元格新建一张表格,要求表格有四行四列,其中第一行的四列合并,第二行、第三行和第四行的第一列合并 table合并单元格
  • 应用单元格样式:

    2018-08-14 15:35:41
    在美化工作表的过程中,我们可以使用单元格...打开文件,切换到【开始】选项卡,单击【样式】组中的【单元格样式】按钮,从弹出的下拉列表中选择【新建单元格样式】选项; 弹出【样式】对话框,在【样式名】文本...
  • * 新建一个Excel文件,里面添加5行5列的内容,再添加两个高度为2的大单元格。 * * @param fileName */ public void writeExcel(String fileName) { // 目标文件 File file = new File(fileName); ...
  • 可以实现上图表格的合并导出,只需添加表头的值和合并单元格的数量,设置单元格的样式(字体,字体大小,字体颜色,是否加粗,是否居中)即可。 ​​​​
  • 帆软单元格格式属性设置

    千次阅读 2020-07-20 11:06:53
    1. 描述 单元格是组成报表的最小元素,...2.1新建单元格 新建一个单元格,位置为 (1,1) ,列向占 2 个单元格,行向占 2 个单元格,文本值为 "FineReport",位置从 (0,0) 开始 TemplateCellElementcellEleme...
  • 有时在数据库的表字段中存储的是图片...第一步:新建内建数据集如下, 第二步:设计报表如下, A1单元格数据类型为HTML类型。 第三步:在web页面查看效果, 转载于:https://www.cnblogs.com/javaR...
  • 创建单元格

    2014-07-30 18:21:50
    1)新建.xib文件,且设置好想要的效果 2)在属性栏中设置Identifier属性,属性值将在代码中用到。   2.新建SimpleTabelCell.m和SimpleTabelCell.h文件,且继承UITableViewCell类。 3.定义三个变量 .h中:   @...
  • 填充合并单元格

    2021-07-21 08:41:42
    在空白工作簿里单击【数据】→【新建查询】→【从工作簿】, 找到要填充合并单元格的文件,根据提示导入数据查询编辑器。 按住Ctrl键不放,单击要处理的列标,依次单击【转换】→【填充】→【向下】。 最后单击...
  • @author YHC ...新建Excel  //第一种方式 Workbook wb = new HSSFWorkbook(); FileOutputStream fileOut = new FileOutputStream("workbook.xls"); wb.write(fileOut); fileOut.close(); //第二种
  • * 新建一个Excel文件,里面添加5行5列的内容,再添加两个高度为2的大单元格。 * * @param fileName */ public void writeExcel(String fileName) { // 目标文件 File file = new File(fileName); ...
  • 但是没有thead,tfoot标签,事实证明,没有人写这几个标签这节课我们来讲最后一个知识点:单元格的合并点击打开excel软件,选中两个单元格,上面有一个合并按钮,点击一下就合并了新建一个html文件,ctrl+alt+n,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,622
精华内容 12,248
关键字:

怎样新建单元格