如何删除 Canvas 小部件周围的浅灰色边框?

2024-02-11

我一直在搞乱 TkinterCanvas我想看看我是否可以制作一些美观的小部件,我有几个问题。

首先,为什么会有一个浅灰色边框我的 Canvas 小部件周围,如何摆脱它?

其次,为什么Canvas中最左上角的位置是(2,2)?看起来应该是(0,0)。

我当前的脚本:

from Tkinter import *

master = Tk()
master.configure(bg='black')
master.wm_attributes("-topmost", 1)

w = Canvas(master, width=150, height=40, bd=0,relief='ridge',)
w.pack()

color = 100
x0 = 2
y0 = 2
x1 = 151
y1 = 2

while y0 < 20 :
    r = color
    g = color
    b = color
    rgb = r, g, b
    Hex = '#%02x%02x%02x' % rgb
    w.create_line(x0, y0, x1, y1,fill=str(Hex), width=1)
    color = color - 2
    y0 = y0 + 1
    y1 = y1 + 1

color = 10

while y0 < 40 :
    r = color
    g = color
    b = color
    rgb = r, g, b
    Hex = '#%02x%02x%02x' % rgb
    w.create_line(x0, y0, x1, y1,fill=str(Hex), width=1)
    color = color + 4
    y0 = y0 + 1
    y1 = y1 + 1

mainloop()

第 6.8 节 为什么画布似乎不是从 0,0 开始? http://web.archive.org/web/20150519004525/http://tcl.sourceforge.net/faqs/tk/#canvas/border of the Tk 使用常见问题解答 http://web.archive.org/web/20150519004525/http://tcl.sourceforge.net/faqs/tk/描述了这种现象。

我能够通过对发布的源代码进行轻微更改来消除边界伪影......

改变这个:

w = Canvas(master, width=150, height=40, bd=0, relief='ridge')
w.pack()

to:

w = Canvas(master, width=150, height=40, bd=0, highlightthickness=0, relief='ridge')
w.pack()

和这个:

x0 = 2
y0 = 2
x1 = 151
y1 = 2

to:

x0 = 0
y0 = 0
x1 = 150
y1 = 0

有趣的是,"borderwidth"属性没有什么区别,但我把它留在了FAQ.

Running w.config()紧接着Canvas初始化语句显示默认值是2 for highlightthickness and 0 for border width.

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

如何删除 Canvas 小部件周围的浅灰色边框? 的相关文章

  • Python 3.6 DateTime Strptime 返回错误,而 Python 3.7 运行良好

    我刚刚为日期数据创建了一个数据类型 它返回一个datetime datetime object 这是代码 import datetime class Date def new cls dateTime args kwargs return
  • 漂亮的地图打印机会抛出类型错误

    我已经使用配置了漂亮的打印机http wiki eclipse org CDT User FAQ How can I inspect the contents of STL containers 3F http wiki eclipse o
  • Python 函数句柄 ala Matlab

    在 MATLAB 中可以创建function handles http www mathworks co uk help techdoc ref function handle html与类似的东西 myfun arglist body 这
  • 在Python中不断寻找用户输入

    我将如何编写一个始终寻找用户输入的 Python 程序 我想我希望有一个等于输入的变量 然后根据该变量的等于值会发生不同的情况 因此 如果变量是 w 那么它将执行某个命令并继续执行 直到收到另一个输入 例如 d 然后会发生不同的情况 但直到
  • Pygame 让精灵按照给定的旋转行走

    很久以前我做了一个Scratch脚本 我想用Pygame将其转换为Python 有很多示例显示图像的旋转 但我想知道如何更改精灵的旋转以使其沿给定方向移动 而不更改图像 这是我的暂存代码 这是我的 Pygame 精灵类 class Star
  • 如何仅选择数组中的第一列并对其求和?

    这是我的代码 import numpy as np contrainte1 1080 0 65 minutes tous les jours contrainte2 720 0 55 minutes du lundi au vendredi
  • 如何使用 python http.server 运行 CGI“hello world”

    我使用的是 Windows 7 和 Python 3 4 3 我想在浏览器中运行这个简单的 helloworld py 文件 print Content Type text html print print print print h2 H
  • 类型错误:translate() 只接受一个参数(给定 2 个参数)[重复]

    这个问题在这里已经有答案了 我的代码在 python 2 x 版本上运行良好 但是当我尝试在 python 3 x 版本上运行它时 出现错误 主题 需要缩写短信编码中的任何消息 Code def sms encoding data star
  • 如何在每次运行 python 程序时添加新列

    我希望我的表的第一列作为卷号 第二列作为名称 每当我运行 python 程序时 我想在表中添加一列日期 在这个新列中 我想填充从 user list 获得的列表将包含值 P A P P 等 如何处理 我尝试首先通过 alter 命令添加一列
  • 检查列表是否已排序的 Pythonic 方法

    有没有一种Python式的方法来检查列表是否已经排序ASC or DESC listtimestamps 1 2 3 5 6 7 就像是isttimestamps isSorted 返回True or False 我想输入一些消息的时间戳列
  • Python:绘制甘特图的模块

    有没有一个好的Python绘图模块甘特图 http en wikipedia org wiki Gantt chart 我试过了开罗情节 http linil wordpress com 2008 09 16 cairoplot 11 但它
  • python lxml 使用iterparse编辑并输出xml

    我已经在 lxml 库上摆弄了一段时间了 也许我没有正确理解它 或者我错过了一些东西 但我似乎无法弄清楚在捕获某个 xpath 后如何编辑文件并且然后能够在逐个元素解析时将其写回到 xml 中 假设我们有这个 xml 作为示例
  • 将带有 md5 消息摘要和 DESede/CBC/PKCS5Padding 的 3DES 加密的 java 代码转换为 python

    我有这个工作java代码 它使用3DES加密对密码进行加密 import java security MessageDigest import java util Arrays import java util Base64 import
  • 在 Qt 5 中嵌入 Python

    我想将 Python 解释器嵌入到 Qt 5 应用程序中 我在 Qt 5 中有一个工作应用程序 但是当我把 include
  • 如何删除 pip 安装的所有软件包?

    如何从当前激活的虚拟环境中卸载 pip 安装的所有软件包 我发现这个片段作为替代解决方案 与重新创建 virtualenv 相比 删除库更加优雅 pip freeze xargs pip uninstall y 如果您通过 VCS 安装了软
  • 获取 python 模块的 2 个独立实例

    我正在与以非 OO 方式编写的 python 2 x API 进行交互 它使用模块全局范围来处理一些内部状态驱动的东西 在它不再是单例的情况下需要它 并且修改原始代码 不是我们的 不是一个选择 如果不使用单独解释器的子进程运行 有什么方法可
  • Matplotlib:检查空图

    我有一个循环加载并绘制一些数据 如下所示 import os import numpy as np import matplotlib pyplot as plt for filename in filenames plt figure i
  • AES 在 cryptojs 中加密并在 python Crypto.Cipher 中解密

    使用 js CryptoJS 加密并使用 python crypto Cipher 解密时出现问题 这是我在js中的实现 附加 iv 与加密消息并使用 base64 进行编码
  • Pandas 2 个字段中唯一值的数量

    我正在尝试查找覆盖 2 个字段的唯一值的数量 例如 一个典型的例子是姓氏和名字 我有一个数据框 当我执行以下操作时 我只获取每列的唯一字段数 在本例中为 最后一个 和 第一个 不是复合体 df Last Name First Name nu
  • 使用 python/scipy 进行 voronoi 和 lloyd 松弛

    如何使用 Qhull 确定哪些 voronoi 单元 按索引 是 正确的 由 现有顶点 组成 我正在尝试使用 LLoyds 算法和 scipy spatial Voronoi 它是 Qhull 的包装器 生成的输入来执行约束松弛 就代码而言

随机推荐

  • App Engine 上的云数据存储客户端库 - NDB 或 google-cloud-datastore

    根据 Google 的文档 我似乎有两个使用 Python 连接到数据存储的主要选项 App Engine 的 NDB 数据存储库和适用于 Python 的 Google Cloud Datastore API 我目前使用的是 App En
  • 如何查找 PostgreSQL 中是否存在函数?

    与表或序列不同 用户定义的函数无法通过pg class http www postgresql org docs 9 3 static catalog pg class html 有以下问题如何找到要删除的所有函数的列表 https sta
  • 使用opengl es着色器将YUV转换为RGB

    我想在 opengl es 着色器中仅使用一个包含 yuv 数据的采样器将 yuv 转换为 RGB 我的代码如下 1 我将 yuv 数据发送到纹理 GLES20 glTexImage2D GLES20 GL TEXTURE 2D 0 GLE
  • 在函数事件(onChange)中调用函数,来自在Leaflet和Vue.js中创建的Select

    我正在 Vue js 和 Leaflet 中制作一个应用程序 在此应用程序中 我有一个使用 L DomUtil 创建的 Select in leaflet this select L DomUtil create select leafle
  • WEBUSB获取串口数据PL2303

    我正在尝试从通过 RS 232 串行通信进行通信的秤上获取读数 并将值使用 WebUsb API 传输到 Web 应用程序中 我正在获取数据 但解码后它是这样的 我在串行终端中获得了正确的数据 这是数据的代码 navigator usb r
  • 尝试在R中合并多个csv文件

    我正在尝试使用 R 合并多个 csv 文件 所有 CSV 文件都具有相同的字段 并且都是仅包含这些 CSV 文件的共享文件夹 我尝试使用以下代码来做到这一点 multmerge function mypath filenames list
  • 节点断言:测试错误消息

    使用节点的断言模块如何测试错误消息 throw new Error Email is required 我使用assert throws来检查是否抛出错误 assert throws myFunction Error 但这并不提供检查消息的
  • Java Servlet getParameter 获取 URL 参数

    我正在构建一个网站 该网站将 url 提交给 servlet 以进行分析 在客户端 我将 url 作为编码参数提交 例如 Submit http www site com Goes to http localhost myservlet u
  • 用无参构造函数记录?

    我正在尝试构建一个使用实体框架的 Web 应用程序 ASP NET MVC3 但我再次碰壁 当尝试对视图中的集合运行 foreach 循环时 它会引发以下异常 System InvalidOperationException 类 GvG E
  • 在 MVC4 中创建和编辑相同的视图

    我们可以使用单个剃刀视图来执行创建和编辑操作吗 如果是 我们如何实现这一目标 我不推荐它 这应该是一个相当长的答案 因为正常的 MVC GET POST 工作流程的过程 请求和工作流程涉及很多事情 我将尝试用所需的最少信息来回答您的问题 以
  • 在 Java 中实例化一个对象而不将其分配给变量有什么意义?

    有什么用new当您不将结果对象分配给引用时使用关键字 这是样本 public static void main String args ample Display display new Display new SWTApp display
  • 发布新任务时 Celery Flower 中出现“未知任务”错误

    我正在运行 celery 3 1 11 和flower 0 6 0 我有一个这样配置的芹菜应用程序 myapp tasks celery py from future import absolute import from celery i
  • 如何使用 Ransack 别名

    我正在尝试使用 Ransack 实现别名 以使我的 URL 搜索查询更短 根据文档 https github com activerecord hackery ransack ransack aliases https github com
  • 从 wsdl 生成 php 代码 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有很多 Web 服务 需要为其编写 PHP 客户端 现在我可以为每个 WSDL 文件手动编写包装器 但我想看看是否有一个工具可以帮助我在
  • 如何在bitbake中访问构建目标名称

    在 yocto 中 我们通过运行命令 bitbake target name 来构建目标 是否有存储 target name 值的全局变量 我如何访问其他相关食谱中的 target name 所以我有一个硬件 我可以为其构建多个 Linux
  • 使用 ASP.NET MVC 3 本地化非数据注释错误的最佳方法是什么?

    借助数据注释 现在可以轻松使用 Resource resx 文件本地化错误消息 例如 public class Student Required ErrorMessageResourceName Required ErrorMessageR
  • 如何从postgres中的字符串末尾应用split_part函数

    我想分割下面的字符串 存在于单列中 从末尾用空格分隔 对于下面 3 行 我想要以下输出 OUTPUT Country STATE STREET UNIT AU NSW 2 12 AU NSW 51 AU NSW 12 INPUT 12 2
  • unix 上的 Boost UDP 套接字问题 - 绑定:地址已在使用中

    首先 我知道同一主题还有其他几个线程 但我无法在其中找到任何可以帮助我的内容 因此我将尝试非常具体地说明我的情况 我设置了一个简单的 UDP 客户端 UDP 服务器对 负责在多个并行模拟之间发送数据 也就是说 模拟器的每个实例都在单独的线程
  • WordPress/Woocommerce 如何自定义 wc_display_item_meta

    我有一些自定义元值 它们在unordered list这很好 但我想知道是否可以自定义输出 如上所述wc display item meta显示 ul class wc item meta li strong class wc item m
  • 如何删除 Canvas 小部件周围的浅灰色边框?

    我一直在搞乱 TkinterCanvas我想看看我是否可以制作一些美观的小部件 我有几个问题 首先 为什么会有一个浅灰色边框我的 Canvas 小部件周围 如何摆脱它 其次 为什么Canvas中最左上角的位置是 2 2 看起来应该是 0 0