从树视图中选择会自动将字符串数字转换为整数

2024-04-07

在我正在开发的项目中,您可以编辑以树形视图形式显示的数据内容。数据字段之一是始终以 0 开头的电话号码。

在表中选择正确的记录并使用其中提取数据时tree.item(tree.selection())。由于某种原因,电话号码会自动转换为整数,因此当它们在框中显示给用户时,它们会丢失开头的 0。

有没有什么办法解决这一问题?

from tkinter import *
import tkinter.ttk as ttk


def fnEdit(tree):
    items = tree.item(tree.selection())
    print(items['values'][0])


myGui = Tk()

container = Frame(myGui)
container.pack(expand=True, fill="both")

editButton = Button(myGui, text='Edit', command=lambda: fnEdit(tree))
editButton.pack(fill="x")

table_header = ['Contact No.']
tree = ttk.Treeview(container, columns=table_header, show="headings")
tree.column(table_header[0])
tree.insert('', 'end', values='01234567895')
tree.pack(expand=True, fill="both")

myGui.mainloop()

通过复制数据values into text (将新项目添加到树时),然后阅读text(代替values),将允许克服这个限制。

from tkinter import Tk
from tkinter import Frame
from tkinter import Button
import tkinter.ttk as ttk

# print(TkVersion) 
# 8.6

def edit(tree):
    if len(tree.selection()) == 1:
        selected_item = tree.item(tree.selection())
        #print(selected_item['values'][0])
        print(selected_item['text'])
    else:
        print('please select item')

gui = Tk()

container = Frame(gui)
container.pack(expand=True, fill='both')

edit_button = Button(gui, text='Edit', command=lambda: edit(tree))
edit_button.pack(fill='x')

tree = ttk.Treeview(container, show='headings')

col_names = ['Contact No.']
tree['columns'] = col_names
for col_name in col_names:
    tree.heading(col_name, text=col_name)

phone_nums = ['01234567895']
for phone_num in phone_nums:
    tree.insert('', 'end', text=phone_num, values=phone_num)

tree.pack(expand=True, fill='both')

gui.mainloop()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从树视图中选择会自动将字符串数字转换为整数 的相关文章

  • 以类似字典的方式将新项目添加到某些结构化数组中

    我想扩展 numpy 中的结构化数组对象 以便我可以轻松添加新元素 例如 对于一个简单的结构化数组 gt gt gt import numpy as np gt gt gt x np ndarray 2 dtype names A B fo
  • 日期/时间值的 Django URL 转换器

    我正在尝试使用 Django 内置的 URL 转换器将 URL 中的日期时间字符串转换为视图中的日期对象 如果我手动输入 URL 它们会按预期工作 但尝试为其生成 URL 时找不到匹配项 我的转换器很简单 from django utils
  • 识别 Windows 版本

    我正在编写一个打印出详细 Windows 版本信息的函数 输出可能是这样的元组 32bit XP Professional SP3 English 它将支持 Windows XP 及更高版本 我一直坚持获取 Windows 版本 例如 专业
  • 这是我尝试安装 pip3 时得到的结果

    这是我尝试安装 pip3 时得到的结果 sudo apt get install python3 pip Reading package lists Done Building dependency tree Reading state i
  • 使用 asyncore 读取网站

    我想异步阅读一个网站 据我所知 这是不可能的 urllib 现在我尝试使用普通套接字进行阅读 但是 HTTP 给我带来了麻烦 我遇到了各种时髦的编码 例如传输编码 分块 必须手动解析所有这些东西 我现在想编码 C 而不是 python 难道
  • VSCode Jupyter Notebook - 恢复缓存版本

    我正在使用在 Ubuntu 19 10 上运行的 VSCode v 1 48 0 创建一个 Jupyter Notebook VSCode 崩溃了 不幸的是我没有保存笔记本 当我重新启动时它是空的 我已经能够在 config Code Us
  • 在 JavaScript 中给变量字符串加上引号

    我有一个 JavaScript 变量 var text http example com 文本可以是多个链接 如何在变量字符串周围放置 例如 我希望字符串看起来像这样 http example com var text http examp
  • “分页文件太小,无法完成此操作”尝试训练 YOLOv5 对象检测模型时出错

    我有大约 50000 个图像和注释文件用于训练 YOLOv5 对象检测模型 我在另一台计算机上仅使用 CPU 训练模型没有问题 但需要太长时间 因此我需要 GPU 训练 我的问题是 当我尝试使用 GPU 进行训练时 我不断收到此错误 OSE
  • Emacs:调试Python的方法

    我把这个贴在程序员 stackexchange com https softwareengineering stackexchange com questions 29844 emacs methods for debugging pyth
  • captureWarnings 设置为 True 不会捕获警告

    我想记录所有警告 我以为这样的设定captureWarnings to True应该可以解决问题 但事实并非如此 代码 import logging import warnings from logging handlers import
  • pip:证书失败,但curl 有效

    我们在客户端安装了根证书 https 连接适用于curl 但如果我们尝试使用pip 它失败 Could not fetch URL https installserver 40443 pypi simple pep8 There was a
  • 计算素数并附加到列表

    我最近开始尝试使用 python 解决 Euler 项目的问题 并且在尝试计算素数并将其附加到列表中时遇到了这个障碍 我编写了以下代码 但我很困惑为什么它在运行时不输出任何内容 import math primes def isPrime
  • 在Python中计算矩阵乘以其转置(AA^T)的最快方法

    在Python中将矩阵与其转置 AA T 相乘的最快方法是什么 我认为 NumPy SciPy 没有考虑使用例如时涉及的对称性 np dot or np matmul 得到的矩阵总是对称的 所以我可以想象有一个更快的解决方案 None
  • 是否可以使用 Python 中的密码安全地加密然后解密数据?

    我在 python 程序中有一些数据 我想在使用密码写入文件之前对其进行加密 然后在使用它之前读取并解密它 我正在寻找一些可以根据密码进行加密和解密的安全对称算法 这个问题 https stackoverflow com questions
  • 使用 boto3 将 csv 文件保存到 s3

    我正在尝试写入 CSV 文件并将其保存到 s3 中的特定文件夹 存在 这是我的代码 from io import BytesIO import pandas as pd import boto3 s3 boto3 resource s3 d
  • Python中如何实现相对导入

    考虑 stuff init py mylib py Foo init py main py foo init py script py script py想要进口mylib py 这只是一个示例 但实际上我只想在父目录中进行模块的相对导入
  • mypy 错误:赋值中的类型不兼容(表达式的类型为“Dict[, ]”,目标的类型为“List[str]”)

    我尝试过了实例化一个空字典在现有字典的第二层上 然后为其分配一个键值对 但 MyPy 会抛出错误 这是一个最小的示例 当激活 MyPy 检查时它将重现它 result Test something result key result key
  • 继承自 NumPy 数组的类如何更改其自身的值?

    我有一个继承自 NumPy n 维数组的简单类 我想要该类的两个方法可以更改该类实例的数组值 其中一种方法应将类实例的数组设置为类实例的列表数据属性的值 另一种方法应将一些列表值附加到类实例的数组中 我不确定如何实现这一点 但我的尝试如下
  • 应用程序的外观 - Py2exe / wxPython

    所以我的问题是我的应用程序的外观和感觉 因为它看起来像一个旧的外观应用程序 它是一个 wxPython 应用程序 在 python 上它运行良好并且看起来不错 但是当我使用 py2exe 将其转换为 exe 时 外观很糟糕 现在我知道如果你
  • 如何访问模板缓存? - 姜戈

    I am 缓存 HTML在几个模板内 例如 cache 900 stats stats endcache 我可以使用以下方式访问缓存吗低级图书馆 例如 html cache get stats 我确实需要对模板缓存进行一些细粒度的控制 有任

随机推荐

  • 如何使用 Python 与 ChatGPT 聊天?

    我要求 ChatGPT 向我展示如何使用 OpenAi 的 API 在终端窗口中与其进行交互 它生成了代码 我对其进行了一些修改 以便完成我想要的操作 这是Python代码 import requests with open api key
  • 将 cellpadding 添加到 Java JTable

    我正在尝试实现 Swing JTable 我按照教程进行操作http docs oracle com javase tutorial uiswing components table html simple http docs oracle
  • 如何使用 RequireJS 构建多个页面

    如何使用RequireJS构建多个页面 就像下面的示例一样 在 app js 中声明每个类是正确的做法吗 有每个 html 文件来声明 我想避免的是当用户到达网站的第一页时加载所有脚本 main js 定义所有外部依赖项 require b
  • 如何为图像中的每个对象着色不同的颜色

    我遇到以下问题 我有黑白图像 我必须对其进行着色 图像中的每个白色 斑点 代表一个对象的实例 我想用新颜色为每个对象着色 但对于每个图像我想使用相同的颜色方案 例如 第一张图片 3 个对象 gt 使用的颜色 红色 绿色 黄色 第二张图片 2
  • Android SDK 管理器未安装组件

    不确定我在这里做错了什么 我安装了 Android SDK Manager 现在正在尝试安装 Android Dev 网站建议的平台 单击安装后 我收到一条错误消息 指出管理器无法在 Android 目录中创建临时文件夹 所以我创造了它 现
  • 创建一个用于切换 jQuery 选项卡的“下一步”按钮

    如何创建一个滚动到下一个 jQuery 选项卡的按钮 我希望选项卡中有一个下一个按钮 可以滚动到下一个选项卡 有点像分步教程 如何才能做到这一点 到目前为止我的代码如下 HTML div ul li a href fragment 1 sp
  • 使用 MVVM 时将事件放在哪里?

    我应该将所有事件放在视图代码后面还是有更合适的方法 例如将命令放在 ViewModel 中 例如 我想在双击数据网格行时打开选项卡 我应该在哪里处理这个事件 不 你不应该将事件放在代码后面 在MVVM 模型 视图 视图模型 设计模式中 视图
  • 从另一个包导出的函数

    我正在按照以下说明进行操作https golang org doc code html Workspaces https golang org doc code html Workspaces链接 我构建了我的第一个 Go 程序 所以 我尝
  • 通过号码确定信用卡类型?

    是否可以仅根据信用卡号来确定信用卡类型 这是推荐的还是我们应该始终询问客户他们使用的信用卡类型 我用谷歌搜索了一下 发现了这个算法 http cuinl tripod com Tips o 1 htm http cuinl tripod c
  • jquery datepicker 多个实例

    我制作了一个 RequestForQuote 表格 在其中我可以添加新职位以获取 RFQ 基本上 在我的例子中 通过 PHP 可以很容易地完成这一点 工作真的很好 您可能想看一下 可以在以下位置找到 我的网站 http www thermo
  • Angular 和 google 距离矩阵没有访问控制标头

    我越来越 XMLHttpRequest 无法加载 请求中不存在 Access Control Allow Origin 标头 资源 在我的角度应用程序中 我向 google 距离矩阵发出了 http 请求 如下所示 var url http
  • 如何不断提示输入直到有效?

    我试图做到这一点 以便当给定的答案既不是 1 也不是 2 时 显示消息 请输入有效答案 出现了 又回到了问题 这是我的代码 Coloration ConsoleColor DarkMagenta What do you want to do
  • 迭代对象属性

    var obj name Simon age 20 clothing style simple hipster false for var propt in obj console log propt obj propt 变量如何propt
  • 如何在 Swing 中左对齐和右对齐组件?

    我有一个看似简单的问题 我有一些标签想要向左对齐 但是当我调整大小时 它们开始向中间漂移 这将打乱我计划添加的其他组件的对齐 我该怎么做才能让它们保持在左边 这是简短 简单的代码 不确定我的问题是什么 package com protoca
  • Proguard 找不到引用的类 com.google.ads.internal.state.AdState

    好吧 伙计们 这变得非常烦人 试图让我的项目在导出 时工作 Proguard 不断给我这个错误 Proguard returned with error code 1 See console 这是我在控制台中收到的完整错误 Warning
  • 使用 require.js 缓存时的调试

    使用 require js 我注意到 依赖项通常由浏览器缓存 即使我强制页面完全重新加载 command shift R 也不会更新 为了始终拥有更新的文件 我让 require js 要求文件在 url 后添加 datestamp 这种方
  • docker 将 Ctrl+p 更改为其他内容?

    我在用docker run bin bash开发我的容器 每次我想使用时Ctrl p在终端或 emacs 中 我必须输入两次 因为 docker 使用它来与容器分离 Ctrl p Ctrl q 我该如何改变Ctrl p到 emacs 或终端
  • 使用 shell 脚本在远程计算机上执行多个命令

    我有一个Java程序Desktop testfolder xyz jar在远程机器上 它在同一文件夹中有一个配置文件 当我通过 SSH 连接到机器时 我会 ssh user remote java cp Desktop testfolder
  • 如何在Android中使用Parse实现RecyclerView的无限滚动

    我在网上找到的大多数文章都使用 setLimit 函数来加载更多项目 但这不是一种有效的方法 因为我们会回忆现有的对象 我使用带有自定义适配器的 RecyclerView 来加载我的列表项 一旦我从 Parse 服务器收到对象列表 我就会根
  • 从树视图中选择会自动将字符串数字转换为整数

    在我正在开发的项目中 您可以编辑以树形视图形式显示的数据内容 数据字段之一是始终以 0 开头的电话号码 在表中选择正确的记录并使用其中提取数据时tree item tree selection 由于某种原因 电话号码会自动转换为整数 因此当